现在我的工作是宣传各种业务。 为了做到这一点,我需要在多个Facebook群组中发布不同的产品,但这几乎占用了我所有的时间,所以我正在尝试开发自己的后机器人,所以我可以在所有特定的本地发布我想要的任何东西Facebook群组立即。
我可以在Feed中发布文字,但无法使代码发布带有文字的图片。 我收到这个错误:
追踪(最近一次呼叫最后一次):
文件“C:\ Users \ Ventas \ Desktop \ Post2.py”,第31行,in graph.put_object(parent_object = group_id,connection_name ='photos',caption = titulo,message = mensaje,source = foto)文件 “C:\ Python27 \ lib \ site-packages \ facebook__init __。py”,第144行,in put_object method =“POST”)文件“C:\ Python27 \ lib \ site-packages \ facebook__init __。py”,第272行,in 请求 提升GraphAPIError(结果)GraphAPIError:(#324)需要上传文件
我不知道我做错了什么,这是我的代码:
#SETUP Photo with file selection dialog
Tkinter.Tk().withdraw()
dir = tkFileDialog.askopenfilename()
photo = open(dir, "rb").read()
#POST IN GROUPS
for group_id in groups:
print("Posting to " + 'https://www.facebook.com/groups/' + str(group_id))
graph.put_object(parent_object=group_id, connection_name='photos', caption=titulo, message=mensaje, source=photo)
答案 0 :(得分:1)
好的,我尝试过selenium,这是facebook上的一个人推荐我的东西,但它没有用,所以我回到了python。 我正在玩api,但文档在如何专门发布组中并不是很清楚。 所以我开始浏览谷歌最深层次的部分并找到 THIS
它使我能够达到代码的结论,这是一个疯狂的解决方案! :D(OMG FINALLY)我已经做了4天这件事。
我刚刚改变了这个:
^[0-9]*$
对此:
graph.put_object(parent_object=group_id, connection_name='photos', caption=titulo, message=mensaje, source=photo)
另外我注意到原始文档说值“album_path”应该是:
graph.put_photo(image=photo, message=mensaje, album_path=group_id + "/photos")
但这只是页面的严格和严格。 对团体来说似乎是:
album_path=group_id + "/pictures"
感谢任何至少阅读我的问题的人,非常特别感谢Facebook的“JérémydeGail”和“Amit Singh”用户,因为没有人打扰甚至试图帮助我。 这段代码对我的工作非常重要。
希望我自己的答案可以帮助将来的某个人。 关心大家! :D
答案 1 :(得分:0)
尝试将图片放在您拥有.py脚本的同一文件中。 然后,做:
hidden
而不是:
photo = "nameofyourpic.jpg"
答案 2 :(得分:0)
从新的 API 版本开始,您不能再通过本地路径上传图片,而是通过相对 URL(图片存储在服务器上)。
graph.put_object(parent_object=group_id, connection_name='photos', caption=titulo, message=mensaje, source="https://1.bp.blogspot.com/-VqCH72pVnok/X-WgDpD5jSI/AAAAAAAA20E/pLCoCXR_7tsme8etcjYAOJhNa9GdPh4ewCLcBGAsYHQ/w640-h428/iherb_holiday.png")