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