Python 当我解析我的学校网站时,我得到了TimeoutError:[WinError 10060] #-*-编码:UTF-8-*- 导入urllib.request 进口稀土 导入操作系统 操作系统(“cls”) url=输入(“url链接:”) 如果(url[0:8]=“https://”): url=url[:4]+url[5:] 如果(url[0:7]!=“http:/”): url=“http://”+url value=urllib.request.urlopen(url.read().decode('UTF8')) par='(.+?)' 结果=关于findall(标准件,数值) 打印(结果)

Python 当我解析我的学校网站时,我得到了TimeoutError:[WinError 10060] #-*-编码:UTF-8-*- 导入urllib.request 进口稀土 导入操作系统 操作系统(“cls”) url=输入(“url链接:”) 如果(url[0:8]=“https://”): url=url[:4]+url[5:] 如果(url[0:7]!=“http:/”): url=“http://”+url value=urllib.request.urlopen(url.read().decode('UTF8')) par='(.+?)' 结果=关于findall(标准件,数值) 打印(结果),python,parsing,Python,Parsing,这是一个标题解析程序。当解析像谷歌、Gmail网站一样时,它工作得很好。当尝试解析我的学校网站时,错误出现了。这是学校的问题吗?或者在我的代码中?您可以增加超时时间 代码: 使用Python Requests()我能够无误地下载,尽管由于无法安装用于Windows的韩文代码页(949),一些文本被篡改了 以下是脚本: value=urllib.request.urlopen(url,timeout=60).read().decode('UTF8') 运行它打印: import requests

这是一个标题解析程序。当解析像谷歌、Gmail网站一样时,它工作得很好。当尝试解析我的学校网站时,错误出现了。这是学校的问题吗?或者在我的代码中?

您可以增加超时时间

代码:

使用Python Requests()我能够无误地下载,尽管由于无法安装用于Windows的韩文代码页(949),一些文本被篡改了

以下是脚本:

value=urllib.request.urlopen(url,timeout=60).read().decode('UTF8')
运行它打印:

import requests

url='http://jakjeon.icems.kr/main.do'
r = requests.get(url)
print(r.status_code)
print(r.headers['content-type'])
print(r.encoding)
print(r.text)
后跟页面的所有文本(r.text)

只有在将其代码页设置为65001(Unicode(UTF-8),请参阅)后,才能将其成功打印到Windows cmd.exe控制台

试图将输出重定向到文件会导致UnicodeEncodeError,因为我的平台上文件的默认Windows编码是代码页1252(ANSI拉丁语1;西欧语(Windows))。以下是试图打印到文件的错误消息:

200  # r.status_code
text/html; charset=UTF-8 # r.headers['content-type']
UTF-8 # r.encoding
运行该命令可以完美地工作(没有错误),并且输出文件包含与网页源代码中相同的韩语字母符号


新脚本可从获取,其输出文件位于。

您的学校网站是什么?可访问吗?@aIKid是的,它可以在Internet Explorer中访问您提供的url是什么?@AnandSKumar它的韩国网站增加超时时间另一个错误出现“ConnectionResetError[WinError 10054]”。我应该放弃?你能说说完整的错误吗?它只是连接重置错误还是由对等错误重置的连接,
永远不要说放弃这个词:
:DConnectionResetError[WinError 10054]在这个连接中,它被远程主机强制关闭。这是一条错误消息。它显示错误所有学校,使用icems服务。我在第一行“导入请求”中遇到错误,请先尝试运行“pip安装请求”。我不知道怎样才能安装这个程序。安装说明在。如果你因为语言的原因读起来有困难,把这个URL放到谷歌翻译网站上,然后把它翻译成最适合你的语言。如果您没有pip或easy_安装,我建议您使用包含pip的最新Python Anaconda版本。Anaconda Python可在下载。我更新了脚本,将编码输出直接写入文件,效果非常好。新脚本位于,其输出文件位于。我的答案已经用这些信息更新了。
200  # r.status_code
text/html; charset=UTF-8 # r.headers['content-type']
UTF-8 # r.encoding
Traceback (most recent call last):
  File "URLDownloadDemo.py", line 12, in <module>
    print(r.text)
  File "C:\Anaconda3\lib\encodings\cp1252.py", line 19, in encode
    return codecs.charmap_encode(input,self.errors,encoding_table)[0]
UnicodeEncodeError: 'charmap' codec can't encode characters in position 600-601: character maps to <undefined>
import requests

url='http://jakjeon.icems.kr/main.do'
r = requests.get(url)
print(r.status_code)
print(r.headers['content-type'])
print(r.encoding)
fout = open('URLDownloadDemo.output.txt', mode='wt', encoding='UTF-8')
fout.write(r.text)
fout.close()