我想对此进行一些研究并找出相关信息,但我不知道它的名称或搜索内容。基本上我想要做的是使用PHP基本上自动填写另一页上的表单。所以说它去了Facebook.com,登录文本框被命名为“用户名”。我想知道如何按名称按按钮,并按文字名称输入文字。这叫什么?感谢。
答案 0 :(得分:2)
这叫做screenscraping。
您可以通过下载页面的原始HTML,然后导航HTML的结构(通常使用DOM库,PHP有一个,请参阅http://php.net/manual/en/book.dom.php)来实现。要提交表单,您需要制作HTTP POST请求,然后下载结果。
如果您要提交“已知”表单,则可以省略下载原始HTML表单的第一步,因为您的程序已经知道要提交的字段是什么。
这个更复杂的版本(绕过使用客户端脚本以防止琐碎的屏幕抓取的网站)是托管Web浏览器组件的实例(mshtml.dll / Trident,Gecko或WebKit)并将其用于像在普通桌面环境中一样评估页面。然后,screenscraper的代码操纵DOM以触发诸如按钮点击之类的事件。