程式碼
from bs4 import BeautifulSoup
html_sample = ' '
soup = BeautifulSoup(html_sample)
print soup.text
注意使用- 「html_sample = ' '」可以透過抓取網頁網址獲得
- 「print soup.text」可以變形成
- print soup.contents
- print soup.select('html')[0]
- print soup.select('a')[0]
- print soup.select('#title')
- print soup.select('.class')
request 與 BeautifulSoup 綜合使用
乾,InfoLite 附加元件要去哪邊找啊 orz
程式碼
import requests
from bs4 import BeautifulSoup
res = requests.get("http://tw.taobao.com/product/%E5%A4%9A%E6%A8%A3%E5%B1%8B-%E8%91%AB%E8%98%86-%E4%BF%9D%E6%BA%AB%E6%9D%AF.htm"
)
soup = BeautifulSoup(res.text)
for item in soup.select(' .item'):
print item.select('strong')[0].text, item.select(' .title')[0].text.strip(), item.select(' .J_NickPopup')[0].text
哈囉~我執行你的程式後發現那個for迴圈有出現IndexError的情形,檢查後發現是item.select(' .J_NickPopup')這個項目爆掉了,這要怎麼處理??
回覆刪除感謝><
雖然有點晚了,但我遇到這個問題並解決。
刪除我的環境是python3.5 ubuntu。
因為你擷取到的串列有些是空串列,所以會報錯。
可以在這行上方:
print(item.select('.J_NickPopup')[0].text)
增加IF判斷:
if item.select('.J_NickPopup'):
感謝回覆
刪除我都是照影片操作的耶,超出影片內容範圍的我也不太清楚 XD
回覆刪除當初嘗試完後,就沒在碰過了 orz
我看了一下,網頁裡面,J_NickPopup 這個類別還在,說不定不是這個問題
先重新檢查一下看是不是套件的問題看看吧
http://wheatpsy.blogspot.tw/2015/05/python.html
請問那個infolite是什麼程式呀?
回覆刪除有辦法直接從網頁原始碼看出來嗎?
https://chrome.google.com/webstore/detail/infolite/ipjbadabbpedegielkhgpiekdlmfpgal/related
刪除我也不曉得 infolite 這個程式要去哪裡裝
回覆刪除看起來是直接挖原始碼裡頭的屬性
什麽東西有辦法直接從網頁原始碼看出來 ?
https://chrome.google.com/webstore/detail/infolite/ipjbadabbpedegielkhgpiekdlmfpgal
回覆刪除對耶,是這個套件!!
刪除之前 google 過都找不到
感謝你~