python - 使用带有 http.client 的 api 来解析 imdb 电影数据库
问题描述
我正在尝试从以下网站检索 JSON 数据:www.themoviedb.org 我只能将 http.client 和 json 用作库。我有一个有效的 API KEY,我不想在这个问题中透露。
url = "https://api.themoviedb.org/3/movie/550?api_key=xxxx"
conn = http.client.HTTPConnection(url,port=80)
## things work well until i call request
conn.request("GET","/")
错误:
for res in _socket.getaddrinfo(host, port, family, type, proto, flags)
: socket.gaierror: [Errno 11001] getaddrinfo 失败
解决方案
当调用 https 站点时,请改用 HTTPSConnection。您也错误地解析了 url。这是我未经测试的示例。告诉我它是否失败。
import http.client
conn = http.client.HTTPSConnection("api.themoviedb.org")
conn.request("GET", "/3/movie/550?api_key=xxxx")
r1 = conn.getresponse()
print(r1.status, r1.reason)
if r1.status == 200:
data1 = r1.read()
推荐阅读
- r - 有没有办法解析胶水里面的变量
- typescript - 右手类型分配
- java - Android 致命异常:OS_REST_SUCCESS_CALLBACK
- arduino - 如何将 MAX30100 脉冲传感器连接到 ESP32 的不同 i2c 引脚并读取数据?
- docker - 扩展基本 alpine 镜像以添加 dot net core app (Docker)
- qt - 如果任何一个 QML 项目自行更新,QML 会重新绘制整个屏幕吗?
- spring-boot - 仅在 Intellij 调试器中检测到 Mockito 未完成的存根异常
- react-native - 在抽屉中使用本机多屏反应
- android - 颤振流显示错误类型“_TypeError”不是“字符串”类型的子类型
- flutter - 如何使用 Flutter hive 创建标记为 fabourite 按钮?