1
我使用Python 3
,我想簡單地下載一個網站的內容如下:網頁抓取:美麗的湯:BS4:<h1>錯誤200 OK</h1>
# IMPORTS --------------------------------------------------------------------
import urllib.request
from bs4 import BeautifulSoup as bs
# CLASS DESC -----------------------------------------------------------------
class Parser:
# CONSTRUCTOR
def __init__(self, url):
self.soup = bs(urllib.request.urlopen(url).read(), "lxml")
# METHODS
def getMetaData(self):
print(self.soup.prettify()[0:1000])
# MAIN FUNCTION --------------------------------------------------------------
if __name__ == "__main__":
webSite = Parser("http://www.donnamoderna.com")
webSite.getMetaData()
爲此我正在以下輸出:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>
200 OK
</title>
</head>
<body>
<h1>
Error 200 OK
</h1>
<p>
OK
</p>
<h3>
Guru Meditation:
</h3>
<p>
XID: 1815743332
</p>
<hr/>
<p>
Varnish cache server
</p>
</body>
</html>
我不明白爲什麼會發生這種情況。它不是代理的東西;我試過使用:
curl "http://www.donnamoderna.com"
它工作得很好。我也嘗試了不同的網站上的代碼,如https://www.google.com
,它工作得很好。 http
協議是否不安全(即http s)?我應該改變我的代碼中的東西嗎?謝謝。
服務器不喜歡你的請求。也許嘗試設置用戶代理標題。 – pguardiario