Python爬蟲學習4:requests.post模擬登入豆瓣(包括獲取驗證碼)
1. 在豆瓣登入網頁嘗試登入後開啟開發者工具,可以查詢後去Headers和Form Data資訊。
2. 實現程式碼
import requests import html5lib import re from bs4 import BeautifulSoup s = requests.Session() url_login = 'http://accounts.douban.com/login' formdata = { 'redir':'https://www.douban.com', 'form_email': '[email protected]', 'form_password': '
[email protected]', 'login': u'登入' } headers = {'user-agent': 'Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 \ (KHTML, like Gecko) Chrome/44.0.2403.157 Safari/537.36'} r = s.post(url_login, data = formdata, headers = headers) content = r.text soup = BeautifulSoup(content, 'html5lib') captcha = soup.find('img', id = 'captcha_image') # 查詢驗證碼
可通過image查詢驗證碼所在的地址(src後面的地址)
if captcha: captcha_url = captcha['src'] re_captcha_id = r'<input type="hidden" name="captcha-id" value="(.*?)"/' captcha_id = re.findall(re_captcha_id, content) print(captcha_id) print(captcha_url) captcha_text = input('Please input the captcha:') print('已輸入驗證碼') formdata['captcha-solution'] = captcha_text formdata['captcha-id'] = captcha_id r = s.post(url_login, data = formdata, headers = headers) with open('contacts.txt', 'w+', encoding = 'utf-8') as f: f.write(r.text)
在網頁開啟驗證碼所在地址,看到驗證碼後手動輸入即可。
相關推薦
Python爬蟲學習4:requests.post模擬登入豆瓣(包括獲取驗證碼)
1. 在豆瓣登入網頁嘗試登入後開啟開發者工具,可以查詢後去Headers和Form Data資訊。2. 實現程式碼import requests import html5lib import re from bs4 import BeautifulSoup s = re
python爬蟲scrapy框架——人工識別知乎登入知乎倒立文字驗證碼和數字英文驗證碼
import requests try: import cookielib except: import http.cookiejar as cookielib import re import time def get_xsrf(): # 獲取xsrf code res
模擬登陸之豆瓣(手動輸入驗證碼)
from lxml import etree import requests from PIL import Image session=requests.session() def get_html(url,uname,password,zym,va): t
python爬蟲系列(2.3-requests庫模擬使用者登入)
一、模擬登入拉鉤網 import re import requests class LoginLaGou(object): """ 模擬登入拉鉤網 """
python爬蟲入門(二):Requests的使用
雖然Python有內建的urllib庫,可以實現網路的請求,但是我並不推薦。因為urllib在很多時候使用起來不方便,比如加一個代理,處理Cookie時API都很繁瑣,再比如傳送一個POST請求也很麻煩。而Requests就相當於urllib的升級版本,簡
python爬蟲系列二:requests-設定headers(3)
1、為什麼要設定headers? 在請求網頁爬取的時候,輸出的text資訊中會出現抱歉,無法訪問等字眼,這就是禁止爬取,需要通過反爬機制去解決這個問題。headers是解決requests請求反爬的方法之一,相當於我們進去這個網
python爬蟲學習筆記——使用requests庫編寫爬蟲(1)
首先感謝http://python.jobbole.com ,我是看了此站的文章之後才有寫此文的想法,本人也是開始學python不久,此文僅僅是記錄一些學習過程中遇到的問題,邊學邊寫,初次寫這樣的博文,差錯在所難免,如有差錯也請指出,感激不盡。
Python3爬蟲學習4:降爬取的資訊儲存到本地
將爬取的資訊儲存到本地 之前我們都是將爬取的資料直接列印到了控制檯上,這樣顯然不利於我們對資料的分析利用,也不利於儲存,所以現在就來看一下如何將爬取的資料儲存到本地硬碟。 1.對.txt檔案的操作 讀寫檔案是最常見的操作之一,python3 內建了讀寫
Python爬蟲學習6:scrapy入門(一)爬取汽車評論並儲存到csv檔案
一、scrapy 安裝:可直接使用Anaconda Navigator安裝, 也可使用pip install scrapy安裝二、建立scrapy 爬蟲專案:語句格式為 scrapy startproject project_name生成的爬蟲專案目錄如下,其中spiders
Python機器學習筆記:異常點檢測演算法——LOF(Local Outiler Factor)
完整程式碼及其資料,請移步小編的GitHub 傳送門:請點選我 如果點選有誤:https://github.com/LeBron-Jian/MachineLearningNote 在資料探勘方面,經常需要在做特徵工程和模型訓練之前對資料進行清洗,剔除無效資料和異常資料。異常檢測也是資料探勘的一個方
Taurus.MVC 2.2.3.4 :WebAPI 實現許可權控制認證(及功能增強說明)
前言: 前兩天,當我還在老家收拾行旅,準備回廣州,為IT連的創業再戰365天時, 有網友扣上問:Taurus.MVC中如何實現認證和許可權控制,最好能做個小例子。 我一不小心回了句:等回廣州我再寫篇文章...... 然後,今天就來補文章了〜〜〜〜 Taurus.MVC Nuget 更新: 寫文之前
SpringBoot學習:整合shiro自動登入功能(rememberMe記住我功能)
首先在shiro配置類中注入rememberMe管理器 /** * cookie物件; * rememberMeCookie()方法是設定Cookie的生成模版,比如cookie的name,cookie的有效時間等等。 * @return */ @Bean public
node.js使用superagent實現模擬登陸功能(包含下載驗證碼功能)
ssa split 輸入 spa code ike utf RM lang superagent版本:3.8.3 樣例代碼: var process = require(‘process‘); var superagent = require(‘superagent‘);
Ueditor1.4.3百度編輯器配置(包括上傳圖片)的使用心得
第一次使用Ueditor,遇到很多問題,我使用的是開發版Ueditor1.4.3jsp的UTF-8版本的,java框架是spring MVC (一) 1)首先第一步去到http://ueditor
Selenium+Python 自動化操控登入介面(有簡單驗證碼圖片校驗)
從最簡單的Web瀏覽器的登入介面開始,登入介面如下: 進行Web頁面自動化測試,對頁面上的元素進行定位和操作是核心。而操作又是以定位為前提的,因此,對頁面元素的定位是進行自動化測試的基礎。 頁面上的元素就像人一樣,有各種屬性,比如元素名字,元素i
驗證碼實現方式-------(js實現驗證碼):
一.js實現驗證碼: 第一步:建一個login.htm,一個code.js檔案,一個code.css檔案,準備一張圖片code.jpg 第二步:編寫login.htm檔案,內容為: <html> <head> <script
python爬蟲學習筆記一:爬蟲學習概覽與Requests庫的安裝與使用
python網路爬蟲與資訊提取 學習目錄: the website is the API Requests:自動爬取HTML頁面自動網路請求提交 robots.txt:網路爬蟲排除標準 Beautiful Soup:解析HTML頁面 正則表示式詳解,提取頁面關鍵資訊Re
python爬蟲學習筆記二:Requests庫詳解及HTTP協議
Requests庫的安裝:https://mp.csdn.net/postedit/83715574 r=requests.get(url,params=None,**kwargs) 這個r是Response物件 url :擬獲取頁面的url連結 params:url中的額外引數
python爬蟲學習筆記1:requests庫及robots協議
The Website is the API requests庫 requests庫的7個主要方法 requests.request 構造一個請求 requests.request(method,url,[**kwarges]) me
python爬蟲學習實踐(一):requests庫和正則表示式之淘寶爬蟲實戰
使用requests庫是需要安裝的,requests庫相比urllib 庫來說更高階方便一點,同時與scrapy相比較還是不夠強大,本文主要介紹利用requests庫和正則表示式完成一項簡單的爬蟲小專案----淘寶商品爬蟲。有關於更多requests庫的使用方法請參考:官方文件第一步:我們先開啟淘寶網頁然後搜