日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python爬虫登录网站_python爬虫19 | 遇到需要的登录的网站怎么办?用这3招轻松搞定!...

發布時間:2024/7/23 python 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python爬虫登录网站_python爬虫19 | 遇到需要的登录的网站怎么办?用这3招轻松搞定!... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

你好

由于你是游客

無法查看本文

請你登錄再進

謝謝合作

當你在爬某些網站的時候

需要你登錄才可以獲取數據

咋整?

莫慌

小帥b把這幾招傳授給你

讓你以后從容應對

那么

接下來就是

登錄的常見方法無非是這兩種

1、讓你輸入帳號和密碼登錄

2、讓你輸入帳號密碼+驗證碼登錄

今天

小帥b先跟你說說第一種

需要驗證碼的咱們下一篇再講

第一招

Cookie大法

你平常在上某個不為人知的網站的時候

是不是發現你只要登錄一次

就可以一直看到你想要的內容

過了一陣子才需要再次登錄

這就是因為 Cookie 在做怪

簡單來說

就是每一個使用這個網站的人

服務器都會給他一個 Cookie

那么下次你再請求數據的時候

你順帶把這個 Cookie 傳過去

服務器一看

誒,小伙子是老客戶啊

有登錄過

直接返回數據給他吧

在服務中還可以設置 Cookie 的有效時間

也就是說

當你下次攜帶一個過期了的 Cookie 給服務器的時候

服務器雖然知道你是老客戶

但是還是需要你重新再登錄一次

然后再給你一個有效的 Cookie

Cookie 的時長周期是服務器那邊定的

ok

了解了這一點之后

我們就來玩一下吧

我們以「逼乎」為例

https://biihu.cc/account/login/

輸入地址之后

按一下 F12

點擊 network 標簽

然后登錄你的帳號

然后點擊其中一個

你就可以看到在 Request Headers 有你的 Cookie

有了 Cookie 之后

我們在代碼中直接獲取我的個人信息

import requestsheaders = {# 假裝自己是瀏覽器'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/73.0.3683.75 Chrome/73.0.3683.75 Safari/537.36',# 把你剛剛拿到的Cookie塞進來'Cookie': 'eda38d470a662ef3606390ac3b84b86f9; Hm_lvt_f1d3b035c559e31c390733e79e080736=1553503899; biihu__user_login=omvZVatKKSlcXbJGmXXew9BmqediJ4lzNoYGzLQjTR%2Fjw1wOz3o4lIacanmcNncX1PsRne5tXpE9r1sqrkdhAYQrugGVfaBICYp8BAQ7yBKnMpAwicq7pZgQ2pg38ZzFyEZVUvOvFHYj3cChZFEWqQ%3D%3D; Hm_lpvt_f1d3b035c559e31c390733e79e080736=1553505597',}session = requests.Session()response = session.get('https://biihu.cc/people/wistbean%E7%9C%9F%E7%89%B9%E4%B9%88%E5%B8%85', headers=headers)print(response.text)

運行后可以發現不用登錄就可以直接拿到自己的個人信息了

小帥b真特么帥 的個人主頁 - 逼乎....

第二招

表單請求大法

很簡單

就是通過抓包

獲取請求登錄的時候需要用到的用戶名密碼參數

然后以表單的形式請求服務器

如果你細心一點的話應該會知道之前說過拉

具體在這

去看下

我就不多說了

第三招

Selenium 自動登錄法

你應該看過這兩個

看過的話

那么對于你來說

Selenium 自動登錄也太 tm 簡單了吧

獲取到兩個輸入框的元素

再獲取到登錄按鈕

往輸入框寫你的帳號密碼

然后自動點擊一下登錄

username = WAIT.until(EC.presence_of_element_located((By.CSS_SELECTOR, "帳號的selector")))password = WAIT.until(EC.presence_of_element_located((By.CSS_SELECTOR, "密碼的selector")))submit = WAIT.until(EC.element_to_be_clickable((By.XPATH, '按鈕的xpath')))username.send_keys('你的帳號')password.send_keys('你的密碼')submit.click()

登錄完之后拿到 Cookie

cookies = webdriver.get_cookies()

有了 Cookie 你就可以拿到你想要的數據了

ok

以上這三招

希望對你有幫助

咱們下一篇說說驗證碼相關

下回見

peace

帥b老仙

法力無邊

(你想約我么?)

點個在看

繼續發力

總結

以上是生活随笔為你收集整理的python爬虫登录网站_python爬虫19 | 遇到需要的登录的网站怎么办?用这3招轻松搞定!...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。