简单的python脚本在facebook墙上发布(代码片段)

author author     2022-10-20     108

关键词:

我对python脚本和一般在线的任何东西都很陌生,但我想开始有趣的地方,所以我想出了一个目标来编写一个简单的桌面.py文件,每次我运行只是简单地将'Hello World'发布到我的脸书我名下的墙。

最后,我通过硬编码(据我所知)管理用户访问令牌并使用该令牌下的facebook图表进行管理

facebookGraph = facebook.GraphAPI(access_token="qwertyuiop")
fb_response = facebookGraph.put_object("me", "feed", message="Hello World")

现在文档说用户令牌的生命周期很短,我真的不喜欢手动进入并将其复制到我的程序中的想法(即使它每2小时或2个月),所以我做了一秒钟尝试通过获取我启用了访问我的帐户的每个权限的应用程序令牌

def FetchAppAccessToken(app_id, app_secret):
        headers = 'grant_type': 'client_credentials', 'client_id': app_id, 'client_secret': app_secret
        response = requests.post('https://graph.facebook.com/oauth/access_token?', params = headers)
        logging.debug(response.text)
        return response

#then.. get the right substring within response and use the graph as before 

但我总是遇见

facebook.GraphAPIError: An active access token must be used to query information about the current user.

我认为可能使用用户令牌是可行的方法,但经过几个小时的试验和错误,包括尝试通过提供电子邮件和密码来获取用户令牌,我读到没有用户交互就不可能。所以回到App Tokens并阅读更多内容。我在Python中使用PHP或使用OAuth / OAuth2创建了一个登录流程(我没有经验)来检索我可以使用的令牌,但我开始感觉我正在偏离我的内容我应该使用。

是否有一种更简单的方法,例如为文件提供电子邮件和密码,只要它在我的桌面上完成该任务?

另外,我想避免打开任何浏览器并单击模拟来执行此操作(如果可能的话)。

答案

不确定这是否是最有效的答案,但我通过使用应用程序凭据来验证我的登录,但我没有通过请求传递它,而是通过WebWidget来模拟浏览器,其中URL将包含代码或令牌,在检索值后关闭窗口并使用它创建facebook图并像平常一样运行它。

facebookGraph = facebook.GraphAPI(access_token=accessToken["access_token"], version=2.7)
facebookGraph.put_object(parent_object='me', connection_name='feed', message='Hello, world')

不幸的是,它必须通过伪浏览器。

我还没试过这个,但是,

另一方面,如果用户已经登录,则可以在用户已经登录时检查cookie并交换访问令牌的代码,如果没有则只需进行浏览器登录。这样,每次运行程序时都不需要弹出webwidget。

使用 Facebook SDK 在朋友的墙上发布图像

】使用FacebookSDK在朋友的墙上发布图像【英文标题】:PostinganimageonaFriend\'swallwithFacebookSDK【发布时间】:2012-06-2910:48:17【问题描述】:我可以在朋友的Facebook墙上发布消息,但我想发布图片。我需要在代码中添加什么?这是我当... 查看详情

什么是最简单的方法,通过我的 Ruby on Rails 应用程序在我的 Facebook 墙上发帖?

...什么是最简单的方法,通过我的RubyonRails应用程序在我的Facebook墙上发帖?【英文标题】:What\'stheeasiestway,topostonmyFacebookWallthroughmyRubyonRailsApp?【发布时间】:2011-05-0518:26:01【问题描述】:上周,我成功地将twitter与我的“小型”rai... 查看详情

如何在 iOS 的朋友墙上在 Facebook 上发布消息?

】如何在iOS的朋友墙上在Facebook上发布消息?【英文标题】:HowtopostamessageinfacebookonafriendswalliniOS?【发布时间】:2013-11-2013:32:33【问题描述】:我正在尝试使用requestWithGraphPath:parameters:HTTPMethod:方法在朋友墙上发布消息,但它不起... 查看详情

使用图形在 Facebook 墙上公开发布

】使用图形在Facebook墙上公开发布【英文标题】:postinfacebookwallpublicalyusinggraph【发布时间】:2020-02-1320:07:47【问题描述】:。我想在我的fb墙上发帖作为公开帖子在我在这里发布我的问题之前,我会检查***提供的所有提供的和类... 查看详情

Android - 使用 facebook sdk 在 facebook 墙上发帖的问题

】Android-使用facebooksdk在facebook墙上发帖的问题【英文标题】:Android-Issueinpostingonfacebookwallusingfacebooksdk【发布时间】:2015-01-3013:11:26【问题描述】:我使用facebooksdk在facebook墙上发帖。我在开发者facebook中创建了应用程序ID,并使用... 查看详情

从 Windows Phone 在 Facebook 墙上发帖

】从WindowsPhone在Facebook墙上发帖【英文标题】:PostOnFacebookWallFromWindowsPhone【发布时间】:2011-05-2718:00:18【问题描述】:我希望我的应用程序在Facebook墙上发布一些内容。我的应用程序应该在WP7上运行。有什么方法可以打开带有默... 查看详情

iPhone - 如何在朋友的 Facebook 墙上发布图像

】iPhone-如何在朋友的Facebook墙上发布图像【英文标题】:iPhone-Howtopostimageonfriend\'sfacebookwall【发布时间】:2013-03-1207:13:26【问题描述】:if([FBSession.activeSession.permissionsindexOfObject:@"publish_actions"]==NSNotFound)//Nopermissionsfoundinse 查看详情

使用 PHP 将视频发布到用户 facebook 墙上

】使用PHP将视频发布到用户facebook墙上【英文标题】:PostvideotouserfacebookwallusingPHP【发布时间】:2011-09-0705:13:15【问题描述】:我希望我网站的用户上传带有标题和说明的视频。发布的视频将保存在服务器上,并发布到用户的Faceb... 查看详情

将用户安装的应用程序发布到 Facebook 墙上

】将用户安装的应用程序发布到Facebook墙上【英文标题】:Posttofacebookwallthatuserinstalledapp【发布时间】:2011-02-2110:47:11【问题描述】:有时在安装使用Facebook的应用程序时,会在用户的墙上贴出一条“用户已安装MyAppNameforiPhone应用... 查看详情

使用 facebook sdk 在墙上发布照片

】使用facebooksdk在墙上发布照片【英文标题】:Publishphotoonwallwithfacebooksdk【发布时间】:2013-06-2817:10:09【问题描述】:我正在尝试使用facebooksdk3.0forandroid在我的墙上发布一张照片。代码如下:GraphObjectgraphObject=GraphObject.Factory.create... 查看详情

在facebook iOS的用户朋友墙上发布消息[重复]

】在facebookiOS的用户朋友墙上发布消息[重复]【英文标题】:Postmessageinuser\'sfriendswallinfacebookiOS[duplicate]【发布时间】:2013-03-0707:32:33【问题描述】:在我的应用程序中,我获得了用户的朋友列表,并在朋友墙中发布了墙。我已经... 查看详情

如何格式化模板以在 Facebook 墙上共享图像

】如何格式化模板以在Facebook墙上共享图像【英文标题】:Howtoformatthetemplatetoshareimagesonfacebookwall【发布时间】:2014-12-0407:10:07【问题描述】:我正在尝试在Facebook墙上分享我网站上的一些内容,我的脚本看起来像这样。<inputdata... 查看详情

用于在 Facebook 等墙上发布的 Google plus API

】用于在Facebook等墙上发布的GoogleplusAPI【英文标题】:GoogleplusAPIforpostingonwalllikeFacebook【发布时间】:2011-12-1301:20:49【问题描述】:我一直在google上搜索教程,以便在googleplus上发布一些文本。但是好像没有。我还尝试通过谷歌为... 查看详情

使用 ios facebook SDK 3.1 在墙上发布

】使用iosfacebookSDK3.1在墙上发布【英文标题】:PostonwallusingiosfacebookSDK3.1【发布时间】:2012-12-1106:17:11【问题描述】:在我的ios应用程序中,我想使用facebookSDK3.1在用户墙上发帖。此外,如果可能的话,我想避免使用权限。【问题... 查看详情

iPhone - Facebook 发布到朋友的墙上

】iPhone-Facebook发布到朋友的墙上【英文标题】:iPhone-Facebookposttoafriend\'swall【发布时间】:2011-01-2821:58:57【问题描述】:我正在开发一个关于facebook集成的应用程序。我不知道如何在朋友墙上发帖,也不知道这是否可行。或者至... 查看详情

在 Facebook 上分享 - 发布到墙上对话框

】在Facebook上分享-发布到墙上对话框【英文标题】:ShareonFacebook-PosttoWalldialog【发布时间】:2013-07-1017:55:17【问题描述】:我有3个分享按钮:Facebook、Twitter、电子邮件:我希望当用户按下Facebook按钮时显示PosttoWall对话框,如下所... 查看详情

如何在 IOS 中使用最新的 facebook sdk 在朋友墙上发布文字

】如何在IOS中使用最新的facebooksdk在朋友墙上发布文字【英文标题】:HowtoposttextonfriendswallusinglatestfacebooksdkinIOS【发布时间】:2014-02-2404:54:20【问题描述】:如何使用Xcode5在朋友墙上发布链接或文本?一些方法在facebookSDK中被贬低... 查看详情

同时发布到 facebook 粉丝页面和用户的墙上。安卓

】同时发布到facebook粉丝页面和用户的墙上。安卓【英文标题】:Postingtofacebookfanpageandtotheuser\'swallinthesametime.Android【发布时间】:2012-05-0211:03:36【问题描述】:我的android应用程序允许用户在Facebook上分享一些有趣的文本片段。在... 查看详情