[英]Scrap from a website that requires twitter login with Python
我最近不得不从需要Twitter登录的站点执行一些python web抓取。 正如我所料,这不是很简单,我遇到了很多问题:
我正在尝试从https://www.scoutzen.com/twitter-lists/search?page=1&q=luxury抓取数据,并且只有连接到twitter时才能访问结果。 所以我尝试使用python登录twitter,然后将请求发送到我想要的网站。 在我的代码下面:
session_requests = requests.session()
result = session_requests.get("https://twitter.com/login")
authenticity_token=
list(set(tree.xpath("//input[@name='authenticity_token']/@value")))[0]
payload = {
'action': 'login',
'session[username_or_email]': 'mail@gmail.com',
'session[password]': 'pass',
'authenticity_token': authenticity_token
}
result = session_requests.post("https://twitter.com/login", data = payload,
headers = dict(referer = "https://twitter.com/login"))
# Scrape url
result = session_requests.get("https://www.scoutzen.com/twitter-lists/search?
q=luxury", headers = dict(referer = "https://www.scoutzen.com/twitter-
lists/search?q=luxury"))
print(result.text)
我检查了Twitter的登录是否成功完成,但是我意识到www.scoutzen.com网站仍然需要登录。
可能和Cookie有关吗? 还是应该尝试其他软件包登录?
我将不胜感激。 非常感谢
解决此问题的一种简单方法是使用Selenium Web浏览器,该浏览器可以用python控制。 这样,它将像您的网络浏览器一样工作,并为您管理所有cookie和所有内容。 有了它,您还可以显示javascript。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.