268香港空间

当前位置:首页 » 资料文档 » 正文

UserAgent设置不当导致php抓取网页失败

17人参与 来自于 : 资源分享网    2019年10月15日   分类 : 资料文档  点这评论

php抓取网页,可谓轻而易举,几行代码就可以搞定。不过,如果你有所疏忽,程序写得不够严密,就会出现有的网页抓取成功有的网页却抓不了的问题。

先来看看php抓取代码的一个方法:

此处为隐藏内容,请评论后查看隐藏内容,谢谢!

代码中$data就是要抓取的网页html代码了。


但是如果使用这个程序去抓取网页文件,无疑是十分脆弱的。这可能对抓取大多数网页没有什么问题,但是某些网页,你会抓不到目标文件,取而代之的抓到意想不到的网页代码。这是什么原因呢?


其实,curl_setopt()的可选参数有的是十分重要的,在抓取网页这部分,有一个参数我们必须要考虑进去,那就是UserAgent。什么是UserAgent?UserAgent简称(UA),是一个只读的字符串,它声明了浏览器用于 HTTP 请求的用户代理头的值。简单来说,就是“声明用什么浏览器来打开目标网页”。


说到这里,可能有的人会意识到不同的UserAgent会得到不同的网页请求了,例如手机浏览器和PC浏览器,就会得到不同的网页文件。举个例子,假如PC浏览器和手机浏览器,打开www.webkaka.com,就会得到不同的结果页,这其实就是UserAgent的不同的结果。居于这个原因,卡卡测速网网站速度测试的程序就使用了用户自定义UA的网页抓取程序。


好了,说到这里,我想大家都明白上述代码应该怎样修改了吧。


正确的写法应该是这样的:

此处为隐藏内容,请评论后查看隐藏内容,谢谢!

上述代码声明使用IE浏览器打开网页。


当然,你也可以声明用Firefox的UserAgent打开网页,代码如下:

此处为隐藏内容,请评论后查看隐藏内容,谢谢!

你还可以声明用其他UserAgent打开网页。下面是IE8的UserAgent:

此处为隐藏内容,请评论后查看隐藏内容,谢谢!

Firefox的UserAgent:

Mozilla/5.0 (Windows; U; Windows NT 5.2) Gecko/2008070208 Firefox/3.0.1
Mozilla/5.0 (Windows; U; Windows NT 5.1) Gecko/20070309 Firefox/2.0.0.3
Mozilla/5.0 (Windows; U; Windows NT 5.1) Gecko/20070803 Firefox/1.5.0.12

Chrome的UserAgent:

Mozilla/5.0 (Windows; U; Windows NT 5.2) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/0.2.149.27 Safari/525.13

Navigator的userAgent:

Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.12) Gecko/20080219 Firefox/2.0.0.12 Navigator/9.0.0.6

Safari的userAgent:

Mozilla/5.0 (Windows; U; Windows NT 5.2) AppleWebKit/525.13 (KHTML, like Gecko) Version/3.1 Safari/525.13 
Mozilla/5.0 (iPhone; U; CPU like Mac OS X) AppleWebKit/420.1 (KHTML, like Gecko) Version/3.0 Mobile/4A93 Safari/419.3

aOpera的userAgent:

Opera/9.27 (Windows NT 5.2; U; zh-cn) 
Opera/8.0 (Macintosh; PPC Mac OS X; U; en) 
Mozilla/5.0 (Macintosh; PPC Mac OS X; U; en) Opera 8.0

通过设置UserAgent,可以避免有的网页因UA不同而返回不同http请求的错误,让自己的抓取网页程序更加完善严密。

268资源分享网 , 版权所有丨本站资源仅限于学习研究,严禁从事商业或者非法活动!丨,转载请保留出处和链接!

本文链接:UserAgent设置不当导致php抓取网页失败来自http://www.268zy.com/pot/685.html

本文标签:UserAgent  

<< 上一篇 下一篇 >>

  • 评论(1)
  • 赞助本站

       

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

相关文章

最新文章

资源分享网

网站分类

热门标签

支付宝扫码领红包

网站源码 | 营销软件 | 最新电影 | 资料文档 | 网站地图

Copyright 268资源分享网

  • 陕ICP备17018001号