我尝试从使用 Javascript 的网站获取信息,以显示项目/公司的电话号码。
使用PHP curl或xpath进行爬网不会让我找到解决方法如何触发此事件而不是继续爬行。
示例:
<a onclick="show(2423,'../entries.php?eid=2423',1);
这里的信息也是函数
function show(info_id,qpath,swimage){
expandit(info_id,0,swimage);
if(document.getElementById('load_'+info_id)) {
ajax_loadContent('cont_td_'+info_id,qpath);
}
}
这可能与PHP / Xpath / DOM有关,或者您建议如何做到这一点? 是否有机会“调试”代码以查看要调用的URL?
感谢您的关注 并且拥有非常棒的节日
答案 0 :(得分:3)
似乎所有它正在进行的是对此页面的../entries.php?eid=2423
的AJAX调用。
尝试直接转到该网址,您可能会在没有任何HTML / JavaScript解析的情况下获取您的电话号码。
答案 1 :(得分:2)
您可以使用firebug的网络标签来关注加载的网址。或Fiddler。一旦你计算出模式,你就可以使用curl自己制作和调用相同的URL。
或者,您可以使用其中一个浏览器自动化框架,例如webaii或selenium或watir或watin,然后抓取这些链接。
答案 2 :(得分:0)
尝试使用Selenium RC模拟点击链接,然后扫描页面以获得结果: http://seleniumhq.org/projects/remote-control/