我正在学习使用机械化解析数据,但是脚本中有一个问题:
脚本1
import mechanize
myBrowser = mechanize.Browser()
myBrowser.open("http://realpython.com/practice/aphrodite.html")
print myBrowser.response().get_data()脚本2
import mechanize
myBrowser = mechanize.Browser()
htmlPage = myBrowser.open("http://realpython.com/practice/aphrodite.html")
print htmlPage.get_data()现在,这两个脚本之间的差别很小。首先,myBrowser.open()没有分配给一个变量,而另一个则分配给一个名为htmlPage的变量。现在的问题是,据我所知,您需要使用响应方法和方法,如get_data,以获得网页的数据。但是在我的第二个脚本中,我没有使用响应方法,而是直接使用get_dat()方法,如果在第二个脚本中使用响应,就会产生错误。为什么会这样?
发布于 2014-06-30 07:53:13
使用htmlPage = myBrowser.open("http://realpython.com/practice/aphrodite.html")是将变量分配给mechanize.Browser().open(),这只允许您访问mechanize.Browser().open()方法和属性。
在第二个示例中,您使用的是myBrowser = mechanize.Browser(),因此您可以访问所有mechanize.Browser()方法和属性。
没有mechanize.Browser().open().resonse方法,只有一个mechanize.Browser().response
https://stackoverflow.com/questions/24485174
复制相似问题