【发布时间】:2016-04-27 01:22:22
【问题描述】:
我正在尝试从 Twitter 搜索结果中收集点赞和转发。
运行下面的 Python 后,我得到一个空列表,[]。我没有使用 Twitter API,因为它不会通过标签查看推文。
我使用的代码是:
from bs4 import BeautifulSoup
import requests
url = 'https://twitter.com/search?q=%23bangkokbombing%20since%3A2015-08-10%20until%3A2015-09-30&src=typd&lang=en'
r = requests.get(url)
data = r.text
soup = BeautifulSoup(data, "lxml")
all_likes = soup.find_all('span', class_='ProfileTweet-actionCountForPresentation')
print(all_likes)
我可以使用此代码成功地将 html 保存到文件中。搜索文本时会丢失大量信息,例如我要查找的类名...
所以(部分)问题显然在于准确访问源代码。
filename = 'newfile2.txt'
with open(filename, 'w') as handle:
handle.writelines(str(data))
此屏幕截图显示了我尝试抓取的跨度。
我已经看过这个问题,其他人也喜欢它,但我还没有完全明白。
How can I use BeautifulSoup to get deeply nested div values?
【问题讨论】:
-
谢谢 a) 知道 twitter 有一个 API 并且 b) 解释你为什么不使用它。
标签: python html twitter web-scraping beautifulsoup