【问题标题】:Scraping Twitter data using BeautifulSoup使用 BeautifulSoup 抓取 Twitter 数据
【发布时间】:2017-11-12 13:08:33
【问题描述】:

我尝试使用 BeautifulSoup 和 requests 库来抓取 Twitter 数据。我尝试先使用 BeautifulSoup 登录,然后抓取所需的页面。但它不起作用。我没有弄错我所做的事情。

我正在添加此代码:

import requests
from bs4 import BeautifulSoup
session_rqst=requests.session()
url="https://twitter.com/login"
r=requests.get(url)
c=r.content
soup=BeautifulSoup(c,"html.parser")
token=soup.find("input",{"name":"authenticity_token"})
payload = {"username": "test_user", "password": "test_password"}
result=session_rqst.post(url, data=payload, headers = 
dict(referer="https://twitter.com/"))
all=result.content
soup1=BeautifulSoup(all,"html.parser")
page=requests.get("https://twitter.com/akhiltaker/following")
page.content
soup1=BeautifulSoup(page.content,"html.parser")

如何从网页中抓取关注者列表?

【问题讨论】:

  • 你应该使用developer.twitter.com。 Twitter 为此类活动提供了一个 API。
  • 您需要立即更改您的推特密码。即使它已被编辑掉,任何有足够代表的人仍然可以看到它。
  • 感谢告知,我没注意到。

标签: python twitter web-scraping beautifulsoup python-requests


【解决方案1】:

不要手动通过requestsBeautifulSoup 抓取推特,而是使用twitter API

您可以直接获取帐户的关注者,请参阅此处的文档:api-reference/get-followers-list,它将您的数据以 json 格式提供给您。

various Python libraries for twitter,您可以将其用于您的目的。


编辑:关于您向BeautifulSoup 提出的问题:您似乎无法如此简单地登录推特,因此您的回复可能只包含一些登录/错误页面,但不包含您的关注者列表。看看this answer,了解如何通过 Python 登录 twitter。

【讨论】:

  • 这应该是评论,而不是答案(其实已经是评论了)。是的,Twitter API 是要走的路,但这与 BeautifulSoup 无关。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-07-31
  • 2017-10-15
  • 2015-03-27
  • 1970-01-01
相关资源
最近更新 更多