【问题标题】:requests module not working in pycharm (only)requests 模块在 pycharm 中不起作用(仅)
【发布时间】:2017-07-09 09:44:18
【问题描述】:

我试图创建一个使用 bs4 和 requests 库的网络抓取程序。我注意到,每当 pycharm 遇到 import requests 时,它就会卡住并在我按下 return 时抛出错误。错误是:

>>> import requests

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Users\HP\64bit\lib\site-packages\requests\__init__.py", line 43, in <module>
    import urllib3
  File "C:\Users\HP\64bit\lib\site-packages\urllib3\__init__.py", line 8, in <module>
    from .connectionpool import (
  File "C:\Users\HP\64bit\lib\site-packages\urllib3\connectionpool.py", line 3, in <module>
    import logging
  File "C:\Users\HP\AppData\Local\Programs\Python\Python36\Lib\logging\__init__.py", line 28, in <module>
    from string import Template
  File "C:\Users\HP\PycharmProjects\Automate\string.py", line 28, in <module>
    t = int(input())
ValueError: invalid literal for int() with base 10: ''
>>>

尝试在 IDLE shell 或 cmd 窗口中做同样的事情就可以了 我正在使用 windows 10 64 位、python 64 位 3.6.2rc1 和 Pycharm 2017.1.4 社区版。

【问题讨论】:

    标签: python-3.x python-requests pycharm python-idle


    【解决方案1】:

    您的 PYTHONPATH 搞砸了,这可能是由于 PyCharm 选择将项目根目录添加到 PYTHONPATH(该选项在“运行”设置中)。

    由于 PYTHONPATH 混乱,请求中的 string 导入会导入您的 string.py 而不是 stdlib 中的相同模块(顺便说一下,回溯清楚地表明了这一点)。


    最简单的解决方案?没有顶级 .py 文件,将它们放在一个包中。这样,只有您的包可以作为 PYTHONPATH 中的顶级包导入,但您最终不会拥有大量新的顶级模块。

    【讨论】:

      猜你喜欢
      • 2015-03-29
      • 2018-05-24
      • 2022-06-10
      • 2016-10-21
      • 2023-02-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-22
      相关资源
      最近更新 更多