gpt4 book ai didi

python - 如何使用 python 获取给定 url 的原始 html 文本

转载 作者:技术小花猫 更新时间:2023-10-29 12:20:34 27 4
gpt4 key购买 nike

我在 python 中使用 html2text 通过获取任何 URL 获取 HTML 页面的原始文本(包括标签),但我收到错误。

我的代码-

import html2text
import urllib2

proxy = urllib2.ProxyHandler({'http': 'http://<proxy>:<pass>@<ip>:<port>'})
auth = urllib2.HTTPBasicAuthHandler()
opener = urllib2.build_opener(proxy, auth, urllib2.HTTPHandler)
urllib2.install_opener(opener)
html = urllib2.urlopen("http://www.ndtv.com/india-news/this-stunt-for-a-facebook-like-got-the-hyderabad-youth-arrested-740851").read()
print html2text.html2text(html)

错误-

Traceback (most recent call last):
File "t.py", line 8, in <module>
html = urllib2.urlopen("http://www.ndtv.com/india-news/this-stunt-for-a-facebook-like-got-the-hyderabad-youth-arrested-740851").read()
File "/usr/lib/python2.7/urllib2.py", line 127, in urlopen
return _opener.open(url, data, timeout)
File "/usr/lib/python2.7/urllib2.py", line 404, in open
response = self._open(req, data)
File "/usr/lib/python2.7/urllib2.py", line 422, in _open
'_open', req)
File "/usr/lib/python2.7/urllib2.py", line 382, in _call_chain
result = func(*args)
File "/usr/lib/python2.7/urllib2.py", line 1214, in http_open
return self.do_open(httplib.HTTPConnection, req)
File "/usr/lib/python2.7/urllib2.py", line 1184, in do_open
raise URLError(err)
urllib2.URLError: <urlopen error [Errno 110] Connection timed out>

谁能解释我做错了什么?

最佳答案

如果您不需要 SSL,Python 2.7.x 中的这个脚本应该可以工作:

import urllib
url = "http://stackoverflow.com"
f = urllib.urlopen(url)
print f.read()

并且在 Python 3.x 中使用 urllib.request 而不是 urllib

因为 urllib2 用于 Python 2,在 Python 3 中它被合并到 urllib

http:// 是必需的。

编辑:在 2020 年,您应该使用第 3 方模块 requestsrequests 可以用pip 安装。

import requests
print(requests.get("http://stackoverflow.com").text)

关于python - 如何使用 python 获取给定 url 的原始 html 文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28610508/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com