gpt4 book ai didi

python - 为什么从页面检索的文本有时看起来像乱码?

转载 作者:太空宇宙 更新时间:2023-11-04 01:37:42 24 4
gpt4 key购买 nike

我在 Python 中使用 urllib 和 urllib2 打开和阅读网页,但有时,我得到的文本不可读。例如,如果我运行这个:

import urllib

text = urllib.urlopen('http://tagger.steve.museum/steve/object/141913').read()
print text

我收到一些不可读的文本。我读过这些帖子:

Gibberish from urlopen

Does python urllib2 automatically uncompress gzip data fetched from webpage?

但似乎找不到我的答案。

预先感谢您的帮助!


更新:我通过“说服”服务器我的用户代理是浏览器而不是爬虫来解决问题。

import urllib

class NewOpener(urllib.FancyURLopener):
version = 'Mozilla/5.0 (X11; Linux i686) AppleWebKit/535.2 (KHTML, like Gecko) Ubuntu/11.10 Chromium/15.0.874.120 Chrome/15.0.874.120 Safari/535.2'

nop = NewOpener()
html_text = nop.open('http://tagger.steve.museum/steve/object/141913').read()

谢谢大家的回复。

最佳答案

这个乱码是服务器对 'http://tagger.steve.museum/steve/object/141913' 请求的真实响应。实际上,它看起来像是经过混淆的 JavaScript,如果由浏览器执行,它会加载页面内容。

要获取此内容,您需要执行此 JavaScript,这在 Python 中可能是一项非常困难的任务。如果您仍想这样做,请查看 pywebkitgtk .

关于python - 为什么从页面检索的文本有时看起来像乱码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8271484/

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