我该如何抓取这个框架?
2 个回答
1
你也可以试试 BeautifulSoup,除了Mechanize之外。虽然我不太确定,但你应该能把网页的结构解析到框架页面里。
我还发现 Tamper Data 是一个很有用的插件,特别是在我写抓取程序的时候。
8
这其实就是请求和响应的模型。你需要发送一系列的http请求,以便得到你想要的响应。在这个情况下,你还需要让服务器把每个请求都当作同一个会话的一部分。为了做到这一点,你得弄清楚服务器是怎么跟踪会话的。这可能涉及很多东西,比如cookies、隐藏输入、表单动作、POST数据或者查询字符串。如果让我猜,我会认为这里可能用的是cookie(我没有检查链接)。如果真是这样,你需要先发送第一个请求,保存你收到的cookie,然后在第二个请求中带上这个cookie。
也有可能,最开始的页面上会有一些按钮和链接,可以让你跳转到第二个页面。这些链接可能会像这样:<A href="http://cad.chp.ca.gov/iiqr.asp?Center=RDCC&LogNumber=0197D0820&t=Traffic%20Hazard&l=3358%20MYRTLE&b=">
,其中很多复杂的内容都是由第一个页面生成的。
其中的"Center=RDCC&LogNumber=0197D0820&t=Traffic%20Hazard&l=3358%20MYRTLE&b="
部分包含了一些会话信息,你必须从第一个页面获取这些信息。
当然,你可能还需要同时做这两件事。