浏览器模拟技巧/提示

时间:2014-06-26 16:04:08

标签: php asp.net curl browser web-scraping

我尝试模拟网络浏览器以登录安全网站,其中网站的后端似乎是用PHP和ASP.NET的某种组合编写的,并检索一些用户详细信息

为了适合我自己的项目,必须将模拟结果(即用户详细信息)返回到PHP脚本进行处理。

到目前为止,我一直在使用PHP中的CURL来实现这一点,并且意识到该网站太复杂而无法有效地使用CURL,而且这种方法的开发速度太慢了。我想要的是某种浏览器模拟器,它可以:

  • 执行JavaScript
  • 提交表格
  • 点击链接
  • 处理cookies
  • 使用ASP.NET回发
  • 可以访问DOM

基本上某些行为与真实的浏览器完全相同,并且可以将页面源返回给我。

我已经在PHP中探索了Snoopy类,在Ruby中探索了Capybara。如果我没有得到任何更好的选择,我将被迫实施其中一个。

1 个答案:

答案 0 :(得分:1)

您有两种选择:

  1. 使用无头浏览器。这基本上是没有任何图形输出的浏览器,可以通过它来控制。码。您可以查看Selenium和PhantomJS,可能存在您所选语言的绑定。

  2. 撤消他们的网站。执行登录流程和操作以获取所需资源,并查看网络流量,例如使用Chrome的开发人员工具。查看相关端点所需的请求,标题和表单数据,并在代码中模拟它。