2
我正在使用simpleTest WebBrowser进行DataScraping此URL http://www.magicbricks.com/bricks/agentSearch.html。但是,虽然一切似乎正确,我总是得到错误City Field is required
。我想这个问题可能是因为当状态值发生变化时,城市中的值会动态变化。任何解决方案这是我的代码。内容未被正确发布?
<?php
require_once('simpletest/browser.php');
$browser = &new SimpleBrowser();
$browser->addHeader('User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:6.0.2) Gecko/20100101 Firefox/6.0.2');
$browser->get('http://www.magicbricks.com/bricks/agentSearch.html');
$browser->setField('source','agentSearch');
$browser->setField('_transactionType','1');
$browser->setField('_propertyType','1');
$browser->setField('resultPerPage','50');
$browser->setField('agentSearchType','B');
$browser->setField('state','520');
$browser->setField('city','4320');
$browser->setField('keyword','');
$browser->setField('country','50');
print $browser->submitFormById('searchFormBean');
print $browser->getResponseCode()
?>
难道你不想做'POST'而不是'GET'吗?看到这里的演示:http://www.simpletest.org/en/form_testing_documentation.html#raw(编辑:好的,我看到你正在尝试提交表单,但它为两个选择动态地绘制列表。 ) –
查看在城市的select元素上有两个函数正在使用事件onChange调用:
@jared:是的,但我不能重复相同的。当选择状态变量时,会发布一些奇怪的内容,并且我无法复制相同的内容。 @ Pabluez:太难找到这些功能的定义。 –