繁体   English   中英

来自需要使用Twitter进行Twitter登录的网站的报废

[英]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。

查看Selenium入门指南

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM