php抓取网页数据插入数据库( 程序模拟登录时是不能成功吗?怎么做好程序)

优采云 发布时间: 2022-04-10 20:12

  php抓取网页数据插入数据库(

程序模拟登录时是不能成功吗?怎么做好程序)

  

$UserAgent = 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727; .NET CLR 3.0.04506; .NET CLR 3.5.21022; .NET CLR 1.0.3705; .NET CLR 1.1.4322)';

curl_setopt($curl,CURLOPT_USERAGENT,$UserAgent);

  注意:如果不添加这些处理,那么模拟登录将不会成功。

  使用上面的程序模拟登录网站一般是成功的,但实际上还是需要考虑模拟登录网站的具体情况。例如:有的网站编码不一样,所以你抓取的页面是乱码,这时需要进行编码转换,如: $data = iconv("gb2312","utf-8",$data ) ;, 将 gbk 编码转换为 utf8 编码。还有一些网站对安全性要求比较高,比如网上银行,会把验证码放在一个内联框里,然后你需要抓取内联框的页面,然后从中提取验证码。验证码的地址,然后抓取验证码。还有一些网站(比如网银)在js代码中提交表单,并且在提交表单之前会进行一些处理,比如加密,所以如果直接提交,将无法登录成功。提交前必须做类似的处理,但是这种情况下,如果你能知道js代码中进行的具体操作,比如加密,加密算法是什么,可以和它做同样的处理,然后去提交数据,这也能成功。但是,关键来了,如果你根本不知道它执行的是什么操作,例如它执行加密,但是你不知道加密的具体算法,那么你不能执行相同的操作,并且无法模拟成功登录。这方面的一个典型案例是网上银行,它使用网银控件在js代码中处理用户提交表单之前提交的密码和验证码,但是我们根本不知道它在做什么,所以无法模拟。所以如果你认为看完这篇文章就可以模拟登录网上银行,那你就太天真了。其他银行的网站能这么容易被你模拟吗?当然,如果你能破解网上银行的控制,那就另当别论了。说了这么多,为什么会感慨这么深,因为遇到了这个问题,不说,我会哭的太多。. . 那你太天真了。其他银行的网站能这么容易被你模拟吗?当然,如果你能破解网上银行的控制,那就另当别论了。说了这么多,为什么会感慨这么深,因为遇到了这个问题,不说,我会哭的太多。. . 那你太天真了。其他银行的网站能这么容易被你模拟吗?当然,如果你能破解网上银行的控制,那就另当别论了。说了这么多,为什么会感慨这么深,因为遇到了这个问题,不说,我会哭的太多。. .

  对PHP相关内容比较感兴趣的读者可以查看本站专题:“”、“”、“”、“”、“”、“”、“”、“”

  我希望这篇文章对你进行 PHP 编程有所帮助。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线