bilibili源码_selenium+phantomjs爬取bilibili
首先我們要下載phantomjs 你可以到 http://phantomjs.org/download.html 這里去下載 下載完之后解壓到你想要放的位置 你需要配置一下環境變量哦
如下圖:
首先,我們怎么讓瀏覽器模擬操作,也就是我們自己先分析好整個操作過程,哪個地方有什么問題,把這些問題都提前測試好,沒問題了再進行寫代碼。
打開bilibili網站 https://www.bilibili.com/ 發現下圖登陸彈窗
那么這里我們就得先把這個彈窗去除,怎么去呢?你刷新一下或者點一下 首頁 就不會出現了,所以這里我們可以模擬再刷新一次或者點擊首頁。
接下來搜索關鍵詞 蔡徐坤 打球 這時就涉及到搜索輸入框和搜索按鈕
點擊搜索后我們看到了下列內容,其中圈起來的就是要爬的信息啦 這時就涉及到頁面源碼獲取,數據元素定位
那么上面這個過程走完了的話 我們也可以選擇寫入xls格式,同時這里還少了一個事,那就是我現在才爬了一頁,那難道不寫個自動化爬取全部嗎?
那此時就得解決循環獲取和寫入xls 更重要的事怎么去操作頁數和下一頁按鈕
大致的思路就是這樣子了!!!
先導入這些模塊
定義一個瀏覽器對象并設置其他功能
創建excel文件,再創建一張工作表,名為 蔡徐坤籃球,并且設置支持覆蓋原數據!
打開網站
browser.get('https://www.bilibili.com/')
尋找 “首頁” 元素
先判斷是否加載 輸入框 再判斷搜索按鈕是否能點擊 達到條件后輸入內容進行搜索
這時搜索完 是彈出新的窗口 這時就得獲取窗口句柄 實現標簽頁跳轉
all_h = browser.window_handles#獲取所有窗口句柄browser.switch_to.window(all_h[1])#switch_to.window 標簽頁跳轉
接下來就是獲取頁面源碼了(此處非全部源碼)
WAIT.until(EC.presence_of_element_located((By.CSS_SELECTOR,'#server-search-app > div.contain > div.body-contain > div > div.result-wrap.clearfix')))#堅持是否加載完所有搜索結果html = browser.page_source#page_source方法可以獲取到頁面源碼
然后搜索元素并提取內容進行保存
再最后就是循環獲取每一頁提取數據最后寫入xls文件!!!
總結
以上是生活随笔為你收集整理的bilibili源码_selenium+phantomjs爬取bilibili的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: matlab偶极矩电场强度分布图_1.2
- 下一篇: python语言的实验心得体会_国产编程