1
前言
在爬取數據時,有一些網站設置了反爬(禁止F12、網頁調試Debugger、丑化Js),比如下面這幾種情況:
1.禁止查看源代碼


2.網頁調試Debugger
上面禁止查看網頁問題,可以先按F12,再訪問網站,但是又有網頁調試Debugger

經過各種百度之后,可以在瀏覽器里面關閉Debug調試

這樣就點擊為藍色就可以關閉了。
3.丑化JS
通過查看,可以發現數據是異步加載過來,查看數據包(network)時,發現js是被丑化過,無法查看

遇到以上這些反爬,難道就會阻止我們去采集數據了???顯然不可能(哈哈哈)
上有政策,下有對策
今天教大家如何用python去解決這些問題,並爬取數據。
2
Python解決上述反爬
1.引入Selenium
本來想通過Reuqest請求數據,奈何數據是異步加載,異步鏈接也被js丑化了。
這時候我考慮抓包方式,但是很遺憾,無法通過抓包方式獲取到異步鏈接

因此這里采用Selenium方式去爬取數據(后面還有新問題,太坑了,但是都解決了)
2.Selenium准備工作
為了在python中使用Selenium,需要進行一些准備工作
安裝Selenium庫
通過下面命令去安裝Selemium庫
pip install selenium

下載chromedriver.exe
查看自己對應瀏覽器(這里使用chrome)版本

在下面這個地址去下載chromedriver.exe
http://chromedriver.storage.googleapis.com/index.html

下載自己瀏覽器對應版本(我這里選擇89)
配置chromedriver.exe
將下載好的文件復制到python安裝路徑下
通過下面python代碼可以查看python安裝路徑
import sys
print(sys.path)


3.Selenium請求數據
"""導入selenium庫"""
from selenium import webdriver
driver = webdriver.Chrome()
"""未將chromedriver.ex復制到python路徑下,需要這樣寫"""
#driver = webdriver.Chrome(executable_path="chromedriver.exe絕對路徑")
driver.get('https://www.aqistudy.cn/historydata/daydata.php?city=北京')
結果如下:

發現沒有獲取到數據,原因是網站監測到非法操作,因此開啟Debuggger,所以數據沒有異步加載過來。
原本應該是這樣的

下面需要進行另外操作(關閉Debugger)
4.給Selenium設置代理
設置代理
找到chrome的路徑

在cmd(終端)下,進入到該路徑

啟動代理
chrome.exe --remote-debugging-port=9222 --user-data-dir="C:\selenum\AutomationProfile"
通過上面這個命令啟動代理
ip是本機ip(127.0.0.1)
端口是9222
啟動之后,自動打開chrome,並等待執行代碼

編寫代碼
from selenium import webdriver
option = webdriver.ChromeOptions()
option.add_experimental_option('debuggerAddress','127.0.0.1:9222')
driver = webdriver.Chrome(executable_path="C:/Users/Administrator/Anaconda3/envs/lyc36/chromedriver.exe",chrome_options=option)
driver.get('https://www.aqistudy.cn/historydata/daydata.php?city=北京')

這樣等待的瀏覽器就自動加載到數據,成功解決!!
下面請看動圖演示

3
總結


1.解決了F12禁止查看網頁反爬.
2.解決了網頁調試Debugger反爬。
3.Selenium結合代理去模擬瀏覽器請求。
4.本文總結了幾種反爬情況,推薦收藏!收藏!收藏!
最后說一聲:原創不易,求給個贊
、在看
、評論
------------- 推薦閱讀 -------------
爬蟲入門篇
4.以『贅婿』為實戰案例,手把手教會你用python爬取『愛奇藝』視頻彈幕
5.python爬取44130條用戶觀影數據,分析挖掘用戶與電影之間的隱藏信息!
6.基金這么賺錢!!編程實現基金從采集到分析通用模板!(白酒為例)
爬蟲框架篇
爬蟲反爬篇
2.python實戰破解『梨視頻』反爬機制,輕松實現批量視頻下載!
可視化篇
1.爬取3w條『各種品牌』筆記本電腦數據,統計分析並進行可視化展示!真好看~
2.python爬取7w+『贅婿』彈幕,發現彈幕比劇還精彩!
3.爬取1907條『課程學習』數據,分析哪類學習資源最受大學生青睞
4.python爬取各類基金數據,以『動圖可視化』方式展示基金的漲跌情況
5.python爬取『大年初一』熱映電影,以『可視化及詞雲秀』方式帶你了解熱映電影
6.python爬取淘寶全部『螺螄粉』數據,看看你真的了解螺螄粉嗎?
8.王者榮耀白晶晶皮膚1小時銷量突破千萬!分析網友評論我發現了原因
9.分析各類基金近一年『日漲幅』流水線動態圖!哭了,真是跌媽不認!
python工具篇
1.教你用python爬蟲下載1w+『ppt模板』,再也不用付費去購買啦!
3.詳細實戰教程!部署Flask網站+域名訪問+免費https證書
5.python實現四種出行路線規划(公交、步行、駕車、騎行)
7.python竊取攝像頭照片(攝像頭拍照+郵箱發送+打包exe)

