gpt4 book ai didi

python - 在 Python 中使用 httplib 连接到网站

转载 作者:太空宇宙 更新时间:2023-11-03 18:45:50 24 4
gpt4 key购买 nike

tl;dr:使用 httplib 创建到站点的连接。我失败了,我希望得到一些指导!

我遇到了一些麻烦。阅读有关python的socket和httplib的内容,尽管我似乎在语法上有一些问题。

这是:

connection = httplib.HTTPConnection('www.site.org', 80, timeout=10, 1.2.3.4)

语法是这样的:

httplib.HTTPConnection(host[, port[, strict[, timeout[, source_address]]]])

“source_address”的行为如何?我可以用它的任何 IP 发出请求吗?我不需要用户代理吗?

另外,如何检查连接是否成功?

if connection:
print "Connection Successful."

(据我所知,HTTP不需要每一秒都有一个“你还活着吗”ping,只要客户端和服务器都好,当发出请求时,它就会被处理。所以我无法持续 ping。)

最佳答案

创建对象实际上并不连接到网站:
HTTPConnection.connect():
Connect to the server specified when the object was created.

source_address似乎任何请求都会发送到服务器,但事实并非如此好像有什么作用。我不确定为什么您需要使用用户代理。无论哪种方式,它都是一个可选参数。

您似乎也无法检查是否已建立连接,这很奇怪。

假设你想要做的是获取网站根目录的内容,你可以使用这个:

from httplib import HTTPConnection
conn = HTTPConnection("www.site.org", 80, timeout=10)
conn.connect()

conn.request("GET", "http://www.site.org/")
resp = conn.getresponse()

data = resp.read()
print(data)

(从 HTTPConnection documentation 猛烈地拼凑在一起)

老实说,您不应该使用 httplib ,而是urllib2或另一个不太......低级的 HTTP 库。

关于python - 在 Python 中使用 httplib 连接到网站,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19548020/

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