除此之外的所有站点都在解析,但这里有大约10秒的延迟,
import urllib.request
from bs4 import BeautifulSoup
def get_html(url):
response = urllib.request.urlopen(url)
return response.read()
def main():
print(get_html('http://bashinform.ru/news/'))
if __name__ == '__main__':
main()
Run Code Online (Sandbox Code Playgroud)
发生以下错误:
回溯(最近最后一次调用最后一次):文件"D:\ Timur\OpenServer\domains\Parser\parser.py",第13行,在main()文件"D:\ Timur\OpenServer\domains\Parser\parser.py"中",第9行,主要打印(get_html('bashinform.ru/news'))文件"D:\ Timur\OpenServer\domains\Parser\parser.py",第5行,在get_html response = urllib.request.urlopen (url)文件"C:\ Users\1\AppData\Local\Programs\Python\Python36-32\lib\urllib\request.py",第223行,在urlopen中返回opener.open(url,data,timeout)文件"C:\ Users\1\AppData\Local\Programs\Python\Python36-32\lib\urllib\request.py",第526行,打开响应= self._open(req,data)文件"C:\ Users\1\AppData\Local\Programs\Python\Python36-32\lib\urllib\request.py",第544行,在_open'_open',req)文件"C:\ Users\1\AppData\Local\Programs\Python\Python36-32\lib\urllib\request.py",第504行,_call_chain结果= func(*args)文件"C:\ Users\1\AppDat a\Local\Programs\Python\Python36-32\lib\urllib\request.py",第1346行,在http_open中返回self.do_open(http.client.HTTPConnection,req)文件"C:\ Users\1\AppData \本地\ Programs\Python\Python36-32\lib\urllib\request.py",第1321行,在do_open r = h.getresponse()文件"C:\ Users\1\AppData\Local\Programs\Python\Python36- 32\lib\http\client.py",第1331行,在getresponse response.begin()文件"C:\ Users\1\AppData\Local\Programs\Python\Python36-32\lib\http\client.py" ,第297行,在开始版本,状态,原因= self._read_status()文件"C:\ Users\1\AppData\Local\Programs\Python\Python36-32\lib\http\client.py",第258行,在_read_status line = str(self.fp.readline(_MAXLINE + 1),"iso-8859-1")文件"C:\ Users\1\AppData\Local\Programs\Python\Python36-32\lib\socket. py",第586行,在readinto中返回self._sock.recv_into(b)TimeoutError:[WinError 10060]尝试连接是unsucc 有趣,因为从另一台计算机上所需的时间没有收到所需的响应,或者由于已连接的计算机的错误响应而已经建立的连接中断[在19.5s完成]
您应该使用请求模块
import random
import requests
agents = [
'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko)',
'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko)']
headers = {"User-Agent":random.choice(agents)}
url = "http://bashinform.ru/news/"
response = requests.get(url,headers=headers)
print(response.text)
'<!doctype html>\n<html lang="ru">\n........
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
146 次 |
| 最近记录: |