炉石传说源代码_python抓取4399上的炉石传说原画,几百张原画拼接成女神画像!...
爐石傳說原畫1
爐石傳說原畫2
本打算使用Selenium模擬點擊獲取圖片信息
嘗試發現源碼中 該按鈕并無相應的跳轉鏈接
這不應該啊 沒有相應的跳轉鏈接 點擊后是如何加載新的圖片?
后來瀏覽整體網站源碼后 發現把問題想復雜 根本不需要模擬點擊查看更多
網站其實已經加載了所有的卡牌原畫 只是之后的原畫做了隱藏處理默認不展示 style=display
點擊查看更多后 顯示原畫
那么只需使用requests獲取網頁源碼
用BeautiSoup/正則表達式/pyQuery解析元素 遍歷相應img的url 即可下載
Github
教訓:爬蟲前 不要根據網頁所對的操作實施相應的代碼爬取 不要有這樣的思維定式 首先要做的是先大體瀏覽分析整個網頁的源代碼 有的可能直接寫在源碼或json或js中 無需再加工
爐石傳說卡牌
該網站通過下拉右邊的滾動條不斷加載新的卡牌
與上一個網站不同 上一個網站一次性寫入了所有卡牌 只不過做了隱藏處理
該網站是通過js動態加載渲染出的卡牌 直接獲取源碼 無法得到所有卡牌信息
那么就用selenium模擬下拉滾動條(selenium簡直居家必備之神器)
使用selenium執行js腳本 每次執行下拉1000個單位滾動條 執行90次
為什么是90次 測試出來的 大概90次拉到底
注意:這里要增加1~3秒的暫停時間 用于網頁渲染
第一次沒有設置停留時間 無法獲取新的數據 懷疑自己 懷疑人生
經前端/后端好友L君的提示 需增加暫停時間 這樣才能獲得加載渲染后的數據
browser.page_source便可獲得動態加載的所有數據
有了數據 之后就很簡單 正則匹配獲取相應url下載即可
Github
https://github.com/sadjjk/Hearth-Stone-Spider.git最后獲得了800張原畫 1324張卡牌
既然獲得了這么多卡牌和原畫 不能浪費 利用起來 拼圖!
致敬下玩了好幾年的爐石
謝謝你!
順手拼一下女神
*聲明:本文于網絡整理,版權歸原作者所有,如來源信息有誤或侵犯權益,請聯系我們刪除或授權事宜。
覺得不錯,點個“在看”然后轉發出去
總結
以上是生活随笔為你收集整理的炉石传说源代码_python抓取4399上的炉石传说原画,几百张原画拼接成女神画像!...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python3.7界面设计_基于sele
- 下一篇: python解析库beautifulso