机械化中的“无控制匹配名称”为python

时间:2014-10-20 01:14:00

标签: python forms mechanize

我正在使用mechanize for python,我正在尝试在kijiji中搜索一个项目。最终我的目标是让我的程序搜索一个项目,并使用beautifulsoup,通过搜索来自输入搜索词的html源并通过电子邮件发送给我来检查是否有人为我的搜索词发布了新广告任何新广告都会显示出来,这样我就可以成为第一个做出回应的广告。下面是我的代码,但是我收到一个错误:"没有控件匹配名称'关键字"。我不确定我做错了什么。

import mechanize
br = mechanize.Browser()  # allow everything to be written to
br.set_handle_robots(False)   # ignore robots
br.open("http://www.kijiji.ca/h-kitchener-waterloo")
br.select_form(nr=0)
br["keywords"] = "Nvidia"

2 个答案:

答案 0 :(得分:0)

您的代码没问题,但没有名为'关键字'在页面中。您可以查看页面源信息以验证。

答案 1 :(得分:0)

虽然我无法解决这个特定错误,但我发现了另一种方法来解决我的最终目标,即抓取网站并通知我任何更改。您可以通过将网址中的关键字(例如:" kijiji.ca/monitor/kitchener-waterloo)更改为您要搜索的任何产品,然后在定时的基础上下载该网址的html源代码来执行此操作并检查代码是否与之前的代码匹配。如果没有,请发送电子邮件,因为您知道已发布新广告。