[問題] 網頁資料擷取問題

作者: ajsaak (光)   2015-12-24 20:16:07
有幾個問題想問問,本身沒程式基礎,參考一些文章使用下面的指令
import urllib2
from bs4 import BeautifulSoup
url = 'http://zh.divine-gate.wikia.com/wiki/1509'
request = urllib2.Request(url)
request.add_header('Accept-Encoding', 'utf-8')
response = urllib2.urlopen(request)
soup = BeautifulSoup(response)
print soup.text
問題1.最後顯示出來,仍然有許多不需要的部分,用Infolite取得表格文字在
td跟th部分嘗試改成print soup.select('td'),但卻變成似乎有亂碼的情況
問題2.現在是使用notebooks操作,如果要輸入成擋案成純文本該如何作?改成py檔
執行完就直接不見了
問題3.如果要大量擷取,要如何修改呢?
如:http://zh.divine-gate.wikia.com/wiki/xxxx XXXX=1~1500
作者: alair99 (I think home)   2015-12-24 23:41:00
用迴圈來變更url參數http://www.largitdata.com/course_list/1 這有爬蟲教學很實用
作者: ajsaak (光)   2015-12-25 13:07:00
這網站我有看,也是跟著學BS4篩選 但不篩選不會有亂碼加上篩選條件 卻有亂碼 但輸入已加上UTF8了?
作者: alair99 (I think home)   2015-12-25 15:31:00
我用python3抓起來像這樣 http://imgur.com/zdqYM24你說的亂碼是td標籤那些嗎 XD
作者: ajsaak (光)   2015-12-25 19:24:00
不是喔 是如果篩選Td下的部分 會變成\u6c42\u3081\u308b\這樣
作者: s860134 (s860134)   2015-12-25 20:31:00
從他 print 的方式就知道是2.X 了 又是unicode的問題你可以嘗試 a = u"\u6c42\u3081\u308b";print(a)
作者: ajsaak (光)   2015-12-26 13:10:00
這樣還是不行 試了幾個方法後 改用3.5就OK了

Links booklink

Contact Us: admin [ a t ] ucptt.com