爬蟲 ---模擬登錄


模擬登錄

模擬登陸是什么鬼?

  有些時候,我們在爬取某些網站內容的時候,網站要求登錄后才能操作..,但是處理驗證碼;

模擬登陸的流程

  • 對登錄頁面進行請求,從請求的頁面源碼中解析下載驗證碼圖片
  • 使用打碼平台對驗證碼進行識別
  • 基於登錄按鈕發起一個post請求(處理參數)

模擬登錄的意義和作用

  爬取基於某些用戶的用戶信息,獲取cookie

驗證碼識別

  三方工具:雲打碼平台--->識別驗證碼種類比較全,無法處理滑動驗證碼.

雲打碼平台

  使用流程如下:

#使用流程
1.注冊
2.登錄 - 普通用戶 --->查詢剩余題分(可充值) - 開發者用戶 創建軟件:我的軟件-》添加新軟件(ID,秘鑰) 下載示例代碼:開發文檔-》點此下載:雲打碼接口DLL-》PythonHTTP示例下載

Cookies的應用和處理

cookies : 服務端記錄客戶端的狀態

  處理cookies的方式

      手動處理 : 不建議,(通用性不強,有些驗證碼動態生成)

      自動處理 : 會話對象Session,該對象可以像requests一樣進行網絡請求發送(get,post),session進行的請求發送可以自動攜帶和處理cookie.

  使用requests模塊和session對象的區別

    session會攜帶參數進行請求,而requests不會.

代理ip

1.為什么使用代理 ?

  訪問頻率過高,導致ip被封禁,因此要使用代理.

2.常見代理服務器 有哪些?

  快代理 西祠代理  goubanjia

3. 匿名度

  • 透明:對方服務器知道你的使用了代理ip,也知道你的真實ip
  • 匿名:知道你使用了代理ip但是不知道你的真實ip
  • 高匿:什么都不知道

4.請求類型類型

#兩種http和https
- http:只可以發起http請求
- https:只可以發起https的請求

5.應用場景

#代理ip的應用 -->proxies參數 提供字典鍵值對http/https 代理ip地址即可

url = 'http://www.baidu.com/s?wd=ip' page_text = requests.get(url=url,headers=headers,proxies={'http':'117.127.0.202:80'}).text with open('./ip.html','w',encoding='utf-8') as fp: fp.write(page_text) print('完成')

 6.為什么要應用代理池?

  為了應用更多的代理ip,增加效率

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM