0
我可以导入模块BeautifulSoup或请求没有任何问题,当我从我的脚本运行或在Python IDLE壳直接做到这一点:为什么我可以从python IDLE shell导入模块bs4或请求,但不能从python解释器导入?
Python 2.7.9 (default, Mar 8 2015, 00:52:26)
[GCC 4.9.2] on linux2
Type "copyright", "credits" or "license()" for more information.
>>> import bs4
>>> bs4
<module 'bs4' from '/usr/local/lib/python2.7/dist-packages/bs4/__init__.pyc'>
>>> import requests
>>> requests
<module 'requests' from '/usr/lib/python2.7/dist-packages/requests/__init__.pyc'>
然而,当我使用Python解释这样做从命令提示符我遇到了以下错误:
[email protected]:~/Desktop/A/C $ python
Python 2.7.9 (default, Mar 8 2015, 00:52:26)
[GCC 4.9.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import bs4
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python2.7/dist-packages/bs4/__init__.py", line 30, in <module>
from .builder import builder_registry, ParserRejectedMarkup
File "/usr/local/lib/python2.7/dist-packages/bs4/builder/__init__.py", line 4, in <module>
from bs4.element import (
File "/usr/local/lib/python2.7/dist-packages/bs4/element.py", line 3, in <module>
from pdb import set_trace
File "/usr/lib/python2.7/pdb.py", line 9, in <module>
import cmd
File "/usr/lib/python2.7/cmd.py", line 53, in <module>
IDENTCHARS = string.ascii_letters + string.digits + '_'
AttributeError: 'module' object has no attribute 'ascii_letters'
>>> import requests
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.7/dist-packages/requests/__init__.py", line 55, in <module>
import urllib3
File "/usr/lib/python2.7/dist-packages/urllib3/__init__.py", line 10, in <module>
from .connectionpool import (
File "/usr/lib/python2.7/dist-packages/urllib3/connectionpool.py", line 29, in <module>
from .packages.ssl_match_hostname import CertificateError
File "/usr/lib/python2.7/dist-packages/urllib3/packages/__init__.py", line 5, in <module>
from ssl import CertificateError
File "/usr/lib/python2.7/ssl.py", line 90, in <module>
import textwrap
File "/usr/lib/python2.7/textwrap.py", line 40, in <module>
class TextWrapper:
File "/usr/lib/python2.7/textwrap.py", line 82, in TextWrapper
whitespace_trans = string.maketrans(_whitespace, ' ' * len(_whitespace))
AttributeError: 'module' object has no attribute 'maketrans'
我看了很多论坛,但并没有真正理解什么可能会造成这一点,最重要的是,如何解决它。
非常感谢您的帮助, 最佳, 马修
BlackJack上的斑点。非常感谢答案!我会注意从现在开始如何命名我的脚本... –