繁体   English   中英

while循环上的语法错误

[英]Syntax error on a while as loop

我正在尝试使用python 2.7.13下载网页并逐行进行分析。 从内存和四处搜索,我发现下面的代码片段足以逐行执行:

 with s as f:
    for line in f:
        print line

变量s由file.read()定义,文件由urllib2打开指定的url定义。 不幸的是,当我运行脚本时,出现以下语法错误:

Traceback (most recent call last):
  File "a.py", line 12, in <module>
    with s as f:
AttributeError: __exit__

老实说,我对自己做错了事感到mb目结舌,对我的错误有深刻的了解将不胜感激。

我发现下面的代码片段足以逐行执行:

是的,但是对于文件对象,

with open(filename) as f:
    for line in f:

变量s由file.read()定义

这是一个字符串,不能在with

并通过打开指定的urllib2定义文件。

那是一个类似文件的对象,但是碰巧是可迭代的

我正在尝试使用python 2.7.13下载网页并逐行进行分析。

无法从网站的迭代行中收集有用的信息。 (至少(X)HTML,JSON等)

尝试使用BeautifulSoup或XPath

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM