0

我是 Python 新手,尤其是 Web 编码新手。我正在尝试制作一个询问姓名和姓氏的程序,然后检查 Pipl 是否有任何结果。我的“策略”是直接访问带有结果的 URL(包含信息),而不使用 POST 方法来完成网站的字段。我试过这个:

import http.client
name = input("Name: ")
surname = input("Surname: ")
url = "pipl.com/search/?q=" + name + "+" + surname + "&l=&sloc=&in=5"
conn = http.client.HTTPSConnection(url, 443)
conn.putrequest('GET', '/')
conn.endheaders()
r = conn.getresponse()
print(r.read())

我收到了这个错误:

socket.gaierror: [Errno -2] 名称或服务未知

我认为那是因为我不仅使用域名(pipl.com),但没有任何帮助,我仍然停留在这里。

我还告诉自己,使用 POST 可能会更容易。我再说一遍,我对网络编码很陌生(而且我的英语不是最好的),我正在学习,所以感谢您的帮助!

4

1 回答 1

0

无论如何,最好的方法是使用 PIPL 代码库。尽管如此,如果你想要更“快速和肮脏”的东西,请使用 python 'requests' 库(http://docs.python-requests.org/en/master/),它可以通过 pip 安装并给你你想要的轻松需要。我拿了你的初始代码并想出了这个:

import requests
name = input("Name: ")
surname = input("Surname: ")
url = "http://api.pipl.com/search/?first_name=" + name + "&last_name=" + surname + "&key=sample_key"
response = requests.get(url)
print (response.json())

最终结果是来自 API 的 json 响应。在https://pipl.com/dev/reference/#response阅读有关 API 可能响应的更多信息

于 2016-08-05T14:53:12.463 回答