php抓取网页数据实例

php抓取网页数据实例

php抓取网页数据实例( 2.使用用户代理:如果不添加这些处理的话模拟登录时)

网站优化优采云 发表了文章 • 0 个评论 • 67 次浏览 • 2021-09-10 09:08 • 来自相关话题

  php抓取网页数据实例(
2.使用用户代理:如果不添加这些处理的话模拟登录时)
  
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
  2. 使用用户代理:
  
$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编码。还有一些网站对安全性要求比较高,比如网银,会把验证码放在inline frame里面。这时候就需要抓取内联框架的页面,从中提取验证码。地址,然后抓取验证码。还有一些网站(如网银)在js代码中提交表单。在提交表单之前,它会做一些处理,比如加密等,所以如果直接提交,是无法登录成功的。提交前必须做类似的处理,但是这种情况下,如果你能知道js代码中进行的具体操作,比如加密,加密算法是什么,可以和它做同样的处理,然后提交数据,这样也可以成功。然而,关键点来了。如果你不知道它执行什么操作,比如它被加密了,但是你不知道具体的加密算法,那么你就不能进行同样的操作,也就无法模拟成功。登录。这方面的一个典型案例是网银,它在js代码中提交表单之前使用网银控件处理用户提交的密码和验证码,但我们不知道它在做什么,所以它无法模拟。所以如果你看完这篇文章就觉得可以模拟网上银行,那你就太天真了。仁家银行的网站能这么容易被你模仿吗?当然,如果能破解网银控制,那就另当别论了。话虽如此,为什么我的感觉如此深刻?因为我遇到过这个问题。不说的话,说多了会哭的。 . .
  更多对PHP相关内容感兴趣的读者可以查看本站专题:《php curl使用总结》、《PHP网络编程技巧总结》、《PHP数组(Array)操作技巧》、《php字符串( string) 用法总结》、《PHP数据结构与算法教程》、《php编程算法总结》、《PHP操作及运算符使用总结》、《PHP常用数据库操作技巧总结》
  希望这篇文章对你的 PHP 编程有所帮助。 查看全部

  php抓取网页数据实例(
2.使用用户代理:如果不添加这些处理的话模拟登录时)
  
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
  2. 使用用户代理:
  
$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编码。还有一些网站对安全性要求比较高,比如网银,会把验证码放在inline frame里面。这时候就需要抓取内联框架的页面,从中提取验证码。地址,然后抓取验证码。还有一些网站(如网银)在js代码中提交表单。在提交表单之前,它会做一些处理,比如加密等,所以如果直接提交,是无法登录成功的。提交前必须做类似的处理,但是这种情况下,如果你能知道js代码中进行的具体操作,比如加密,加密算法是什么,可以和它做同样的处理,然后提交数据,这样也可以成功。然而,关键点来了。如果你不知道它执行什么操作,比如它被加密了,但是你不知道具体的加密算法,那么你就不能进行同样的操作,也就无法模拟成功。登录。这方面的一个典型案例是网银,它在js代码中提交表单之前使用网银控件处理用户提交的密码和验证码,但我们不知道它在做什么,所以它无法模拟。所以如果你看完这篇文章就觉得可以模拟网上银行,那你就太天真了。仁家银行的网站能这么容易被你模仿吗?当然,如果能破解网银控制,那就另当别论了。话虽如此,为什么我的感觉如此深刻?因为我遇到过这个问题。不说的话,说多了会哭的。 . .
  更多对PHP相关内容感兴趣的读者可以查看本站专题:《php curl使用总结》、《PHP网络编程技巧总结》、《PHP数组(Array)操作技巧》、《php字符串( string) 用法总结》、《PHP数据结构与算法教程》、《php编程算法总结》、《PHP操作及运算符使用总结》、《PHP常用数据库操作技巧总结》
  希望这篇文章对你的 PHP 编程有所帮助。

php抓取网页数据实例( 2.使用用户代理:如果不添加这些处理的话模拟登录时)

网站优化优采云 发表了文章 • 0 个评论 • 67 次浏览 • 2021-09-10 09:08 • 来自相关话题

  php抓取网页数据实例(
2.使用用户代理:如果不添加这些处理的话模拟登录时)
  
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
  2. 使用用户代理:
  
$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编码。还有一些网站对安全性要求比较高,比如网银,会把验证码放在inline frame里面。这时候就需要抓取内联框架的页面,从中提取验证码。地址,然后抓取验证码。还有一些网站(如网银)在js代码中提交表单。在提交表单之前,它会做一些处理,比如加密等,所以如果直接提交,是无法登录成功的。提交前必须做类似的处理,但是这种情况下,如果你能知道js代码中进行的具体操作,比如加密,加密算法是什么,可以和它做同样的处理,然后提交数据,这样也可以成功。然而,关键点来了。如果你不知道它执行什么操作,比如它被加密了,但是你不知道具体的加密算法,那么你就不能进行同样的操作,也就无法模拟成功。登录。这方面的一个典型案例是网银,它在js代码中提交表单之前使用网银控件处理用户提交的密码和验证码,但我们不知道它在做什么,所以它无法模拟。所以如果你看完这篇文章就觉得可以模拟网上银行,那你就太天真了。仁家银行的网站能这么容易被你模仿吗?当然,如果能破解网银控制,那就另当别论了。话虽如此,为什么我的感觉如此深刻?因为我遇到过这个问题。不说的话,说多了会哭的。 . .
  更多对PHP相关内容感兴趣的读者可以查看本站专题:《php curl使用总结》、《PHP网络编程技巧总结》、《PHP数组(Array)操作技巧》、《php字符串( string) 用法总结》、《PHP数据结构与算法教程》、《php编程算法总结》、《PHP操作及运算符使用总结》、《PHP常用数据库操作技巧总结》
  希望这篇文章对你的 PHP 编程有所帮助。 查看全部

  php抓取网页数据实例(
2.使用用户代理:如果不添加这些处理的话模拟登录时)
  
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
  2. 使用用户代理:
  
$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编码。还有一些网站对安全性要求比较高,比如网银,会把验证码放在inline frame里面。这时候就需要抓取内联框架的页面,从中提取验证码。地址,然后抓取验证码。还有一些网站(如网银)在js代码中提交表单。在提交表单之前,它会做一些处理,比如加密等,所以如果直接提交,是无法登录成功的。提交前必须做类似的处理,但是这种情况下,如果你能知道js代码中进行的具体操作,比如加密,加密算法是什么,可以和它做同样的处理,然后提交数据,这样也可以成功。然而,关键点来了。如果你不知道它执行什么操作,比如它被加密了,但是你不知道具体的加密算法,那么你就不能进行同样的操作,也就无法模拟成功。登录。这方面的一个典型案例是网银,它在js代码中提交表单之前使用网银控件处理用户提交的密码和验证码,但我们不知道它在做什么,所以它无法模拟。所以如果你看完这篇文章就觉得可以模拟网上银行,那你就太天真了。仁家银行的网站能这么容易被你模仿吗?当然,如果能破解网银控制,那就另当别论了。话虽如此,为什么我的感觉如此深刻?因为我遇到过这个问题。不说的话,说多了会哭的。 . .
  更多对PHP相关内容感兴趣的读者可以查看本站专题:《php curl使用总结》、《PHP网络编程技巧总结》、《PHP数组(Array)操作技巧》、《php字符串( string) 用法总结》、《PHP数据结构与算法教程》、《php编程算法总结》、《PHP操作及运算符使用总结》、《PHP常用数据库操作技巧总结》
  希望这篇文章对你的 PHP 编程有所帮助。

官方客服QQ群

微信人工客服

QQ人工客服


线