python - 请求.exceptions.ConnectionError : HTTPConnectionPool

标签 python exception python-requests connectionexception

我有一个像这样的 python 脚本:

#!/usr/bin/python
import sys
import requests

if len(sys.argv) < 2:
        print 'usage: python %s <file-urls>' % (sys.argv[0])
        sys.exit(2)

print '%-15s %20s' % ('URL_PAGE', 'STATUS')

FileName = sys.argv[1]
InputFile = open(FileName)
OK = open('ok.txt', 'w+')
NOK = open('nok.txt', 'w+')
for url in InputFile:
    status = requests.get(url).status_code
    print '%-15s %15s' % (url.strip(), status)
    if status == 200:
        OK.write('%-15s %15s' % (url.strip(), status) + '\n')
        OK.flush()
    else:
        NOK.write('%-15s %15s' % (url.strip(), status) + '\n')
        NOK.flush()
OK.close()
NOK.close()

当我运行它时出现以下错误:

Traceback (most recent call last):
  File "url-code.py", line 18, in <module>
    status = requests.get(url).status_code
  File "/usr/lib/python2.7/dist-packages/requests/api.py", line 55, in get
    return request('get', url, **kwargs)
  File "/usr/lib/python2.7/dist-packages/requests/api.py", line 44, in request
    return session.request(method=method, url=url, **kwargs)
  File "/usr/lib/python2.7/dist-packages/requests/sessions.py", line 383, in request
    resp = self.send(prep, **send_kwargs)
  File "/usr/lib/python2.7/dist-packages/requests/sessions.py", line 486, in send
    r = adapter.send(request, **kwargs)
  File "/usr/lib/python2.7/dist-packages/requests/adapters.py", line 378, in send
    raise ConnectionError(e)
requests.exceptions.ConnectionError: HTTPConnectionPool(host='google.com%0A', port=80): Max retries exceeded with url: / (Caused by <class 'socket.gaierror'>: [Errno -2] Name or service not known)

这是什么,我该如何处理和解决它?

最佳答案

您的url 中有一个换行符; ASCII 代码点 0A 是 \n 换行符。

剥离你的输入行:

for url in InputFile:
    url = url.strip()

关于python - 请求.exceptions.ConnectionError : HTTPConnectionPool,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24467557/

相关文章:

python - 从列表和数据透视创建数据框,Python 3.6

c# - 期望空值时抛出异常?

java - 重构java中的异常代码

python - 如何在 Python 中仅打印特定链接

Python 请求超时无法正常工作

python - 具有多个匹配项的正则表达式组捕获

python - 关于 "unpacking"生成器的 Python 规则是什么

python - 如何通过 Python 创建和打开文件?

vb.net - VB.net 中的 Err.Number 与 try-catch

python - 使用 Python 请求进行 ASP.NET 身份验证