成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

python使用selenium爬蟲知乎的方法示例

瀏覽:173日期:2022-07-06 18:50:26

說起爬蟲一般想到的情況是,使用 python 中都通過 requests 庫獲取網頁內容,然后通過 beautifulSoup 進行篩選文檔中的標簽和內容。但是這樣有個問題就是,容易被反扒機制所攔住。

反扒機制有很多種,例如知乎:剛開始只加載幾個問題,當你往下滾動時才會繼續往下面加載,而且在往下滾動一段距離時就會出來一個登陸的彈框。

這樣的機制對于通過獲取服務器返回內容的爬蟲方式進行了限制,我們只能獲得前幾個回答,而沒辦法或許后面的回答。

所以需要使用 selenium 模擬真實瀏覽器進行操作。

最終實現效果如下:

python使用selenium爬蟲知乎的方法示例

前提是需要自行搜索教程安裝:

chromeDriver selenium 庫

想要使用下面代碼的可以直接修改 driver.get() 里的地址,然后爬取結果最終會存在message.txt文件中

代碼如下:

from selenium import webdriver # 從selenium導入webdriverfrom selenium.webdriver.common.by import By # 內置定位器策略集from selenium.webdriver.support.wait import WebDriverWait # 用于實例化一個Driver的顯式等待from selenium.webdriver.support import expected_conditions as ECfrom selenium.webdriver.common.action_chains import ActionChainsimport timeoption = webdriver.ChromeOptions()option.add_argument('headless')driver = webdriver.Chrome() # chrome_options=option 這個參數設置之后可以隱藏瀏覽器driver.get(’https://www.zhihu.com/question/22110581’) #修改這里的地址file = open('./messages.txt', 'w')def waitFun(): js = ''' let equalNum = 0; window.checkBottom = false; window.height = 0; window.intervalId = setInterval(()=>{ let currentHeight = document.body.scrollHeight; if(currentHeight === window.height){ equalNum++; if(equalNum === 2){clearInterval(window.intervalId);window.checkBottom = true; } }else{ window.height = currentHeight; window.scrollTo(0,window.height); window.scrollTo(0,window.height-1000); } },1500)''' # 這個暫停一下是因為要等待頁面將下面的內容加載出,這個 1500 可以根據自己的網絡快慢進行適當的調節 # 這里需要往上移動一下,因為不往上移動一下發現不會加載。 driver.execute_script(js)# selenium 可以獲取 瀏覽器中 js 的變量。調用的js returndef getHeight(nice): # 這里獲取 js 中的 checkBottom 變量,作為到底部時進行停止。 js = ''' return window.checkBottom; ''' return driver.execute_script(js)try: # 先觸發登陸彈窗。 WebDriverWait(driver, 40, 1).until(EC.presence_of_all_elements_located( (By.CLASS_NAME, ’Modal-backdrop’)), waitFun()) # 點擊空白關閉登陸窗口 ActionChains(driver).move_by_offset(200, 100).click().perform() # 當滾動到底部時 WebDriverWait(driver, 40, 3).until(getHeight, waitFun()) # 獲取回答 answerElementArr = driver.find_elements_by_css_selector(’.RichContent-inner’) for answer in answerElementArr: file.write(’==================================================================================’) file.write(’n’) file.write(answer.text) file.write(’n’) print(’爬取成功 ’+ str(len(answerElementArr)) +’ 條,存入到 message.txt 文件內’)finally: driver.close() #close the driver

這套代碼實現了打開知乎,然后自動向下滑動,當彈出登陸框時,自動點擊左上角關閉登陸框。然后繼續向下滑動,加載頁面,直到滑動到底部。然后將內容寫在 message.txt 文件里面。

selenium 功能非常強大, 可以模擬人為在瀏覽器的操作,進行輸入、點擊、滑動、播放、暫停等等操作,因此也可以用來寫一些腳本,用來刷學時,搶課等等。

到此這篇關于python使用selenium爬蟲知乎的方法示例的文章就介紹到這了,更多相關python selenium爬蟲知乎內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: python
相關文章:
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
成人一区二区三区| 天天av天天翘天天综合网色鬼国产| 日本一区二区三区电影| 99精品国产视频| 丝袜诱惑制服诱惑色一区在线观看| 欧美日韩午夜精品| 黄色精品网站| 国产suv精品一区二区6| 亚洲资源在线观看| 精品区一区二区| 欧美伊人久久久久久午夜久久久久| 91视频www| 久久99精品久久久久久国产越南| 国产片一区二区| 91黄色小视频| 国产精品毛片在线看| 91免费看`日韩一区二区| 人人超碰91尤物精品国产| 欧美一级一区二区| 亚洲区第一页| 成人av网址在线观看| 久久精品国产精品亚洲红杏| 国产亚洲欧洲一区高清在线观看| 欧美在线播放高清精品| 国产一区二区黄色| 91网页版在线| 国产精品视频一二| 国产剧情一区二区| 4438x亚洲最大成人网| 国产一区二区三区蝌蚪| 亚洲婷婷免费| 国产伦精品一区二区三区免费迷| 日韩精品一级二级| 亚洲精品国产品国语在线app| 国产三级欧美三级| 精品国产一区二区三区不卡| 91精品国产91久久久久久最新毛片| 91精彩视频在线观看| 久久精品国产清高在天天线 | 国产成人免费视频网站高清观看视频| 亚洲国产视频一区| 一区二区三区欧美亚洲| 亚洲久草在线视频| 亚洲老妇xxxxxx| 国产精品午夜电影| 国产拍欧美日韩视频二区| 91精品免费观看| 日韩欧美国产小视频| 精品视频在线免费观看| 一本久久精品一区二区| 欧洲生活片亚洲生活在线观看| 久久综合福利| 欧美精品久久99久久在免费线 | 7878成人国产在线观看| 欧美三级在线播放| 欧美人xxxx| 欧美精品v日韩精品v韩国精品v| 欧美日韩中字一区| 欧美日韩一二三| 欧美mv日韩mv| 国产女主播视频一区二区| 亚洲毛片av在线| 麻豆精品视频在线观看免费| 丁香六月综合激情| 亚洲特色特黄| 日本韩国精品在线| 日韩精品一区二区三区视频在线观看 | 亚洲激情自拍| 模特精品在线| 日韩美女视频一区二区在线观看| 久久影院视频免费| 日韩精品亚洲专区| 蜜臀av一区二区在线免费观看| 久久国产生活片100| 成人美女在线观看| 狠狠色狠狠色综合人人| 午夜一级在线看亚洲| 欧美日韩精品一区二区天天拍小说 | 免费观看日韩电影| 国产精品天天看| 亚洲婷婷国产精品电影人久久| 亚洲va在线va天堂| 99久久er热在这里只有精品15| 欧美一级播放| 久久久久国产精品厨房| 天堂va蜜桃一区二区三区漫画版| 国产一区二区美女诱惑| 国产一区美女| 欧美高清www午色夜在线视频| 国产人成一区二区三区影院| 日本在线不卡视频| 欧美日韩视频一区二区三区| 欧洲av在线精品| 国产精品女主播av| 激情文学综合网| 中文久久精品| 日韩片之四级片| 日韩精品高清不卡| 亚洲私拍自拍| 欧美成人福利视频| 久久精品国产一区二区三| 欧美日本免费| 日韩一级成人av| 亚洲成av人片一区二区梦乃| 91丝袜国产在线播放| 欧美日韩在线播放| 亚洲日本成人在线观看| 91美女福利视频| 精品人伦一区二区色婷婷| 老司机精品视频线观看86| 一级成人国产| 亚洲欧美在线视频观看| a级高清视频欧美日韩| 欧美色精品天天在线观看视频| 一区二区在线观看不卡| 欧美日韩亚洲一区| 欧美精品一区二区不卡| 国产精品一区在线观看乱码| 欧美亚洲日本国产| 秋霞电影一区二区| 久久一区视频| 午夜视频久久久久久| 国产日韩亚洲欧美精品| 综合网在线视频| 亚洲一二三区精品| 国产精品久久久久影院| 成人白浆超碰人人人人| 日韩欧美激情四射| 高清视频一区二区| 欧美一级午夜免费电影| 国产精品乡下勾搭老头1| 欧美日韩午夜在线视频| 美腿丝袜一区二区三区| 欧美三级韩国三级日本一级| 久久se精品一区二区| 欧美日韩国产高清一区二区| 老司机免费视频一区二区三区| 欧美在线一二三| 黑人巨大精品欧美黑白配亚洲| 欧美性猛交xxxx乱大交退制版| 卡一卡二国产精品| 91精品国产欧美日韩| 成人午夜激情视频| 久久麻豆一区二区| 亚洲午夜在线| 亚洲图片一区二区| 91久久人澡人人添人人爽欧美| 久久精品噜噜噜成人av农村| 欧美一区二区三区小说| 色综合天天综合网国产成人综合天| 国产清纯美女被跳蛋高潮一区二区久久w| 欧美暴力喷水在线| 夜色激情一区二区| 欧美午夜影院一区| 不卡视频一二三| **欧美大码日韩| 一本到不卡精品视频在线观看| 久久精品国产成人一区二区三区| 日韩一区二区在线观看视频| 欧美日韩一区在线视频| 亚洲国产日韩一区二区| 欧美性高清videossexo| 成人网页在线观看| 亚洲黄色性网站| 884aa四虎影成人精品一区| 色综合中文字幕国产| 欧美一区二区三区成人| 欧美国产综合视频| 日产国产欧美视频一区精品 | 精品一区二区免费| 精品区一区二区| 99精品免费| 国产91丝袜在线播放| 亚洲区小说区图片区qvod| 欧美三级日韩三级国产三级| 成人激情动漫在线观看| 亚洲欧美日韩在线| 91精品国产综合久久精品 | 亚洲激情图片一区| 欧美一级专区免费大片| 91久久黄色| 国产又黄又大久久| 亚洲蜜桃精久久久久久久| 欧美日韩不卡一区二区| 一区在线免费| 国产一区二区在线看| 亚洲欧美一区二区三区国产精品| 欧美视频自拍偷拍| 亚洲第一区色| 国模冰冰炮一区二区| 亚洲天堂成人网| 日韩一区二区三区在线观看| 国产精品手机在线| 欧美破处大片在线视频| 美女网站视频久久| 亚洲美女屁股眼交3| 欧美mv日韩mv亚洲| 欧美亚洲一区二区在线| 亚洲毛片视频| 色综合天天综合网天天看片|