作者arlu (arlu)
看板Python
標題[問題] 抓取網頁遇到的問題
時間Thu Aug 26 17:22:22 2010
大家好,
最近初學Python,想做個簡單的抓網頁程式,
我灌的是python3.1.1的版本,我用了urllib的class,以下為測試main
--------------------------------------------------------
import urllib.request
url="
http://google.com"
MyWeb=urllib.request.urlopen(url)
WebContent=MyWeb.read()
MyWeb.close()
print(WebContent)
--------------------------------------------------------
我發現如果打一些比較好抓的網頁如(
http://google.com)
就會正確的將內容抓下來,但我打一些網站,像是(
http://www.wretch.cc/)
執行後就會出現以下訊息↓
Traceback (most recent call last):
File "html2spec.py", line 6, in <module>
MyWeb=urllib.request.urlopen(url)
File "C:\Python31\lib\urllib\request.py", line 119, in urlopen
return _opener.open(url, data, timeout)
File "C:\Python31\lib\urllib\request.py", line 353, in open
response = meth(req, response)
File "C:\Python31\lib\urllib\request.py", line 465, in http_response
'http', request, response, code, msg, hdrs)
File "C:\Python31\lib\urllib\request.py", line 391, in error
return self._call_chain(*args)
File "C:\Python31\lib\urllib\request.py", line 325, in _call_chain
result = func(*args)
File "C:\Python31\lib\urllib\request.py", line 473, in http_error_default
raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 401: Unauthorized
這是為什麼啊?還是我應該用什麼方式呢?
謝謝幫忙解答。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.120.3.16
推 cobrasgo:不就是錯誤碼的最後一個字嗎? 08/26 19:29
推 Starwindd:HTTP Error 401: Unauthorized <- 就是它 08/26 22:04
→ arlu:謝謝!但想請教一下是不是一定得透過抓封包的方式去看呢? 08/27 13:23
推 areyo:可以用scrapy 但好像只支媛2.x版 08/27 13:48
→ sunrise0406:使用CURL,偽裝成browser即可抓到網頁內容 10/07 14:08