首页 > 解决方案 > Beautifulsoup Facebook 登录

问题描述

我正在尝试使用 Beautifulsoup 通过使用以下代码来抓取帖子数据,但我发现 beautifulsoup 无法登录,这导致刮板返回所有帖子的文本并包含标题消息(要求您登录的文本) .

我可能知道如何修改代码以返回具有该 ID 的特定帖子的信息,而不是所有帖子信息。谢谢!

import requests
from bs4 import BeautifulSoup

class faceBookBot():
    login_basic_url = "https://mbasic.facebook.com/login"
    login_mobile_url = 'https://m.facebook.com/login'
    payload = {
            'email': 'XXXX@gmail.com',
            'pass': "XXXX"
    }
    post_ID = ""

    # login to facebook and redirect to the link with specific post 
    # I guess something wrong happen in below function
    def parse_html(self, request_url):
        with requests.Session() as session:
            post = session.post(self.login_basic_url, data=self.payload)
            parsed_html = session.get(request_url)
        return parsed_html

    # scrape the post all <p> which is the paragraph/content part
    def post_content(self):
        REQUEST_URL = f'https://m.facebook.com/story.php?story_fbid={self.post_ID}&id=7724542745'
        soup = BeautifulSoup(self.parse_html(REQUEST_URL).content, "html.parser")
        content = soup.find_all('p')
        post_content = []
        for lines in content:
            post_content.append(lines.text)
        post_content = ' '.join(post_content)
        return post_content

bot = faceBookBot()
bot.post_ID = "10158200911252746"

标签: pythonweb-scrapingbeautifulsoupscrapy

解决方案


你不能,facebook加密密码而你没有他们使用的加密,服务器永远不会接受它,节省你的时间并找到另一种方式


推荐阅读