作者neiltsang (楚留香雞排)
看板Python
標題[問題] 請問爬蟲 bs4的擷取方法?
時間Mon Jun 29 21:38:52 2020
如題目
用原始碼會是一片這樣
logged_user = false;
var static_id_cdn = 2;
var html5player = new HTML5Player('html5video', '25522515');
if (html5player) {
html5player.setVideoTitle(');
html5player.setSponsors([{}]);
html5player.setVideoUrlLoW...........
其實還滿整齊的
我所要的網址都擺在了html5player.setVideoUrlLow裡面
使用bs4是好選擇嗎?該如何操作?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.220.255.143 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Python/M.1593437935.A.94F.html
1F:→ mychiux413: bs4不能解析js,如果re能抓出來就re吧,下策就seleni 06/30 00:03
2F:→ mychiux413: um 06/30 00:03
3F:→ alvinlin: 嗯。通常是去看js完後它把資料丟哪去了。然後去抓那個結 06/30 01:36
4F:→ alvinlin: 果 06/30 01:36
5F:→ alvinlin: 建議可以po個網址來看看省時間 06/30 01:37
6F:推 aidansky0989: 請問碰到html會先用xpath還是bs4?兩個不太會選 07/01 08:25
7F:→ alvinlin: bs4有css也有xpath.如果用parsel(scrapy)只有xpath.所以 07/01 13:26
8F:推 alvinlin: bs4有個參數有html.parser/lxml/html5lib但只是速度不同 07/01 13:29
9F:→ alvinlin: 或你也可以用html.parser模組的HTMLParser類自己刻一個 07/01 13:32
10F:→ alvinlin: 或用html2text模組不parse自己去找內容 07/01 13:35
11F:→ alvinlin: 所以bs4和xpath不是對比的選擇.而是xpath是bs4的選項之1 07/01 13:40
12F:→ alvinlin: bs4不能解析js是因為js需要瀏覽器才能跑(除非是node.js) 07/01 13:42
13F:→ OrzOGC: 我都爬出來找,xpath直接放棄...XD 07/01 15:01
14F:推 aidansky0989: 感謝大大解答 07/01 15:20
15F:→ alvinlin: ^^ 07/06 23:24
16F:→ alvinlin: 如果還是說明不清楚可以說 07/06 23:25
17F:→ alvinlin: 通常是css和xpath混用吧看哪一個可以達到目標 07/06 23:29