Я использую Python 3
и я пытаюсь просто загрузить содержимое веб-сайта следующим образом:Web Зачистка с Python: красивый суп: 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)? Должен ли я что-то изменить в своем коде? Благодарю.
Сервер не нравится ваш запрос. Возможно, попробуйте настроить заголовок user-agent. – pguardiario