【问题标题】:Retreiving data from a website [duplicate]从网站检索数据[重复]
【发布时间】:2014-12-01 01:52:04
【问题描述】:

如果这是不可接受的或在其他地方得到回答,我感到非常抱歉,但我在过去的一个半小时里一直在寻找有关它的信息,但没有找到任何我可以使用的东西。我是 Python 的新手,并且被分配了从站点提取 IP 的任务。我能够让我的程序读取该站点,但我根本无法弄清楚下一步该做什么。每个远程接近我想要的答案都超出了我的编程能力,以至于我根本不理解它,而且教程实际上并没有解决我遇到的具体问题。同样,如果有任何文件或文本我可以阅读而不是浪费时间,请以这种方式发送给我。

import urllib.request
site = urllib.request.urlopen("http://homer.wcitac.org/~sec290/hwk2/")
print (site.read())
IP = site[10]
print (IP)

我知道,这很简单,但我只做了一小会儿。据我所知,它应该打印回第 10 个(页面上的第 9 个)字符,这样我就有了一个起点,所以我可以使用冒号查找我想要的字符,但它给了我“TypeError:'HTTPResponse ' 对象不支持索引”,我不知道这是什么意思。

【问题讨论】:

标签: python


【解决方案1】:

您将site 变量指向urllib.request.urlopen 的返回值。在下一行中,您调用site.read(),它返回一个字符串。简而言之,site 没有引用字符串;它引用了一个响应对象,该对象可用于获取字符串内容。

既然你已经知道site.read()返回一个字符串,为什么不将那个捕获为一个变量并使用它呢?

content = site.read()
print(content)

【讨论】:

【解决方案2】:

不要打印site.read() 的结果,而是将其存储在一个变量中,该变量将是一个包含页面所有文本的字符串,然后您可以根据需要进行任何操作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-08-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-08
    • 2010-12-14
    • 2020-11-16
    相关资源
    最近更新 更多