使用Python 2020请求登录Facebook

使用Python 2020请求登录Facebook,python,html,css,beautifulsoup,python-requests,Python,Html,Css,Beautifulsoup,Python Requests,您好,我想制作一个机器人,自动登录facebook,并在特定群组上发布帖子。我想我会使用selenium来发布帖子,这很简单,所以我只是想寻求第一部分的帮助。我遇到了一些问题,因为网络开发工具选项卡中的一些表单数据是隐藏的,没有显示在网站html中,我不知道如何找到它。以下是我目前的代码: import requests from bs4 import BeautifulSoup headers = { 'user-agent': 'Mozilla/5.0 (Windows NT 10

您好,我想制作一个机器人,自动登录facebook,并在特定群组上发布帖子。我想我会使用selenium来发布帖子,这很简单,所以我只是想寻求第一部分的帮助。我遇到了一些问题,因为网络开发工具选项卡中的一些表单数据是隐藏的,没有显示在网站html中,我不知道如何找到它。以下是我目前的代码:

import requests
from bs4 import BeautifulSoup

headers = {
    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36'
}
data = {
    'email': '----------',
    'pass': '---------',
    'timezone': '-60',
    'locale': 'pl_PL',
    'next': 'https://www.facebook.com/',
    'login_source': 'login_bluebar',
    'prefill_contact_point': '512250794',
    'prefill_source': 'browser_onload',
    'prefill_type': 'password',
    'skstamp': 'eyJoYXNoIjoiYThiN2EyOTMwNTJhZTUzODg0YjZiNWNlOWQ1NzZjZjUiLCJoYXNoMiI6IjQ3ZWI4M2U1ZjVmYTQxMTQ4MDIxYWVlZTgzNTk3ZWJmIiwicm91bmRzIjo1LCJzZWVkIjoiYjU0NWE4MzczOTgwYTZhODViZjUzYmE3ZmM0OWIyOWYiLCJzZWVkMiI6IjdiNTU0NzBjM2M5NjlhMTY3YmZkZmIwZjE5ODlmNDdhIiwidGltZV90YWtlbiI6ODA3OTAsInN1cmZhY2UiOiJsb2dpbiJ9'
}
with requests.Session () as s:
    url = 'https://www.facebook.com/'
    r = s.get(url, headers=headers)
    soup = BeautifulSoup(r.content, 'lxml')
    data['jazoest'] = soup.find('input', attrs={'name': 'jazoest'})['value']
    data['lsd'] = soup.find('input', attrs={'name': 'lsd'})['value']
    data['lgnrnd'] = soup.find('input', attrs={'name': 'lgnrnd'})['value']
    data['lgndim'] = soup.find('input', attrs={'name': 'lgndim'})['value']
    data['ab_test_data'] = soup.find('input', attrs={'name': 'ab_test_data'})['value']
    data['lgnjs'] = soup.find('input', attrs={'name': 'lgnjs'})['value']
    data['guid'] = soup.find('input', attrs={'name': 'guid'})['value']
    data['lgndim'] = soup.find('input', attrs={'name': 'lgndim'})['value']

    r = s.post(url, data=data, headers=headers)

    print(r.content)

如果有人能帮我,我会很高兴的。2020年有没有更好的办法来做这些事情?是的,我知道有人发了一些关于使用bs4请求登录facebook的帖子,但这些帖子是从2018年开始的,我认为facebook发生了很大变化,比如每次我登录后,一些标题消失或更改了名称。

你可以使用facebook API,该API可在


与使用第三方库不同,您可以使用API直接向群中发帖(有关更多详细信息,请参阅)

使用Facebook API!有使用api的例子吗?@MichałMalinowski这里有一个关于它的概述@MichałMalinowski,不过,直接通过Facebook api发表文章可能比使用第三方库更容易