擅长:python、mysql、java
<p>不确定是不是打字错误,但是当你给<code>urlstring</code>和<code>file</code>赋值时,会有一个空格。在</p>
<p>当使用<code>try .. catch</code>时,您应该将<code>try</code>块中的代码保持尽可能小:如果出现问题,您将知道原因,而无需进行大量调试。在</p>
<p>您可以使用<code>else</code>子句。在</p>
<blockquote>
<p>The try … except statement has an optional else clause, which, when present, must follow all except clauses. It is useful for code that must be executed if the try clause does not raise an exception.</p>
</blockquote>
<p>所以你的代码应该是这样的:</p>
<pre><code>for url in urllist:
try:
file = urllib2.urlopen(url)
urlstring = file.read()
except IOError as e:
print "Can't open URL: {}".format(e.message)
else:
m = []
m = re.findall (..)
</code></pre>
<p>在捕捉异常时还应该更具体,捕捉所有异常并不是一个好主意。在</p>