[已解決] 網路爬蟲 抓不到標籤<img>的src屬性

看板Python作者 (sil)時間6年前 (2018/11/11 19:03), 6年前編輯推噓3(3016)
留言19則, 5人參與, 6年前最新討論串1/2 (看更多)
大家好,小魯是個網路爬蟲新手 最近想來寫一個下載圖片的網路爬蟲 這裡附上簡短的程式碼 >>> import requests, bs4 >>> url = 'https://v.comicbus.com/online/comic-103.html?ch=924' >>> r = requests.get(url) >>> r.raise_for_status() >>> soup = bs4.BeautifulSoup(r.text) >>> img_tag = soup.find('img', id='TheImg') >>> img_tag <img border="0" id="TheImg" name="TheImg"/> 似乎抓不到src的這個屬性,請問這是為什麼? 圖示8comic的海賊王924話圖片 https://imgur.com/ccnRjKr
-- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.246.8.173 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1541934200.A.D4E.html

11/11 19:07, 6年前 , 1F
檢測器看到的是前端處理後的DOM 可能page source沒這張圖
11/11 19:07, 1F
所以這樣就沒辦法爬取這張圖片的意思了嘛? 我也有想過用selinium去抓抓看 可是我發現網頁連右鍵都不給點 ※ 編輯: bugbug777 (111.246.8.173), 11/11/2018 19:10:02

11/11 19:10, 6年前 , 2F
把HTML輸出成一個txt檔,然後檢查跟Google看到的一不
11/11 19:10, 2F

11/11 19:10, 6年前 , 3F
一樣
11/11 19:10, 3F

11/11 19:10, 6年前 , 4F
如果不一樣的話,那就只能用Selenium了
11/11 19:10, 4F
我有將網頁的源始碼一樣用requests抓下來存成txt 可是點開進去檢閱,在要抓的圖片的<img>標籤中 還是跟上面顯示的結果一樣都抓不到src這個屬性 ※ 編輯: bugbug777 (111.246.8.173), 11/11/2018 19:17:44

11/11 19:16, 6年前 , 5F
可以Google一下Ajax這個東西,應該就是這個技術在搞鬼
11/11 19:16, 5F
剛剛google了一下有關ajax相關的爬蟲內容,發現要爬取這樣的內容 好像有點超出我現在的能力跟時間,不過還是很感謝你讓我有個簡單的概念 ※ 編輯: bugbug777 (111.246.8.173), 11/11/2018 19:30:18

11/11 19:38, 6年前 , 6F
其實就是網頁分成2種,動態跟靜態。
11/11 19:38, 6F

11/11 19:39, 6年前 , 7F
requests之類的只能抓靜態網頁
11/11 19:39, 7F

11/11 20:08, 6年前 , 8F

11/11 20:09, 6年前 , 9F
你要抓的東西好像是透過這行從伺服器抓過來的
11/11 20:09, 9F

11/11 20:11, 6年前 , 10F

11/11 20:12, 6年前 , 11F
反白的是航海王的圖檔,我在requests回來的資料找不到
11/11 20:12, 11F

11/11 20:12, 6年前 , 12F
這串
11/11 20:12, 12F

11/11 20:12, 6年前 , 13F
還是改用Selenium吧...
11/11 20:12, 13F
謝謝你還自己幫忙測試了一遍= = ※ 編輯: bugbug777 (111.246.8.173), 11/11/2018 20:26:28

11/11 20:26, 6年前 , 14F

11/11 20:26, 6年前 , 15F
重點是要render javascript
11/11 20:26, 15F

11/11 20:26, 6年前 , 16F
偷偷貼我寫的爬蟲~ 其實Selenium也很簡單的~
11/11 20:26, 16F

11/11 20:27, 6年前 , 17F
抓了幾十萬張圖片,現在硬碟正絕讚爆滿中~
11/11 20:27, 17F

11/11 21:18, 6年前 , 18F
有能力就用requests找出規則爬,seleniumu效能太QQ
11/11 21:18, 18F
※ 編輯: bugbug777 (111.246.8.173), 11/11/2018 22:31:47

11/12 16:15, 6年前 , 19F
用 requrests + node_vm2 https://is.gd/AfRc8h
11/12 16:15, 19F
謝謝大哥,我大略的看了一下程式碼,這個好像就是我需要的,哈哈 只不過我還是新手,我對正規表示還不太熟悉,還有還在學習Js 程式碼裡面好像有關於Node.Js的東西,我會找時間再去摸索 不過很感謝你提供了一個大方向給我 ※ 編輯: bugbug777 (111.246.8.173), 11/12/2018 17:55:56
文章代碼(AID): #1Rw0nurE (Python)
文章代碼(AID): #1Rw0nurE (Python)