网络爬虫八-处理user-agent
User Agent即用户代理,是Http协议中的一部分,属于头域的组成部分,User Agent也简称UA。它是一个特殊字符串头,是一种向访问网站提供你所使用的浏览器类型及版本、操作系统及版本、浏览器内核、等信息的标识。通过这个标识,用户所访问的网站可以显示不同的排版从而为用户提供更好的体验或者进行信息统计。
浏览器的UA字串的标准格式:浏览器标识 (操作系统标识; 加密等级标识; 浏览器语言) 渲染引擎标识版本信息。但各个浏览器有所不同。
字串说明:
1、浏览器标识
出于兼容及推广等目的,很多浏览器的标识相同,因此浏览器标识并不能说明浏览器的真实版本,真实版本信息在 UA 字串尾部可以找到。
2、操作系统标识
3、加密等级标识
N: 表示无安全加密
I: 表示弱安全加密
U: 表示强安全加密
4、浏览器语言
在首选项 > 常规 > 语言中指定的语言
5、渲染引擎
显示浏览器使用的主流渲染引擎有:Gecko、WebKit、KHTML、Presto、Trident、Tasman等,格式为:渲染引擎/版本信息
6、版本信息
显示浏览器的真实版本信息,格式为:浏览器/版本信息
int send_request(int fd, void *arg)
{ int need, begin, n; char request[1024] = {0}; Url *url = (Url *)arg; sprintf(request, "GET /%s HTTP/1.0\r\n" "Host: %s\r\n" "Accept: */*\r\n" "Connection: Keep-Alive\r\n" "User-Agent: Mozilla/5.0 (compatible; Qteqpidspider/1.0;)\r\n" "Referer: %s\r\n\r\n", url->path, url->domain, url->domain); need = strlen(request); begin = 0; while(need) { n = write(fd, request+begin, need); if (n <= 0) { if (errno == EAGAIN) { //write buffer full, delay retry usleep(1000); continue; } SPIDER_LOG(SPIDER_LEVEL_WARN, "Thread %lu send ERROR: %d", pthread_self(), n); free_url(url); close(fd); return -1; } begin += n; need -= n; } return 0;
}
网络爬虫八-处理user-agent相关推荐
- python爬虫隐藏ip_Python3网络爬虫之使用User Agent和代理IP隐藏身份
本文介绍了Python3网络爬虫之使用User Agent和代理IP隐藏身份,分享给大家,具体如下: 运行平台:Windows Python版本:Python3.x IDE:Sublime text3 ...
- 精通python网络爬虫-精通Python网络爬虫:核心技术、框架与项目实战 PDF
给大家带来的一篇关于Python爬虫相关的电子书资源,介绍了关于Python.Python网络爬虫.Python核心技术.Python框架.Python项目实战方面的内容,本书是由机械工业出版社出版, ...
- java jsoup 网络爬虫 学习例子(八)京东和淘宝商品比价 PhantomJS
java jsoup 网络爬虫 学习例子(八)京东和淘宝商品比价 PhantomJS /** filename getHtml.js* phantomjs.exe 2.0.0* author InJa ...
- tensorflow精进之路(十八)——python3网络爬虫(中)
1.概述 上一节简单的介绍了一些python3网络爬虫的知识,这一节就运用上一节的知识写个小demo,用于爬去汽车之家网站的汽车厂商及车型名称. 2.打开待爬取网页 打开汽车之家官网, https:/ ...
- Python网络爬虫数据采集实战(八):Scrapy框架爬取QQ音乐存入MongoDB
通过前七章的学习,相信大家对整个爬虫有了一个比较全貌的了解 ,其中分别涉及四个案例:静态网页爬取.动态Ajax网页爬取.Selenium浏览器模拟爬取和Fillder今日头条app爬取,基本涵盖了爬虫 ...
- python爬虫文件代码大全-Python网络爬虫实战项目代码大全(长期更新,欢迎补充)...
WechatSogou[1]- 微信公众号爬虫.基于搜狗微信搜索的微信公众号爬虫接口,可以扩展成基于搜狗搜索的爬虫,返回结果是列表,每一项均是公众号具体信息字典.[1]: https://github ...
- python网络爬虫的基本步骤-十分钟教会你用Python写网络爬虫程序
在互联网时代,爬虫绝对是一项非常有用的技能.借助它,你可以快速获取大量的数据并自动分析,或者帮你完成大量重复.费时的工作,分分钟成为掌控互联网的大师. 注意:欲获取本文所涉及的文案,代码及教学视频的链 ...
- python代码大全p-Python网络爬虫实战项目代码大全(长期更新,欢迎补充)
WechatSogou[1]- 微信公众号爬虫.基于搜狗微信搜索的微信公众号爬虫接口,可以扩展成基于搜狗搜索的爬虫,返回结果是列表,每一项均是公众号具体信息字典.[1]: https://github ...
- 网络爬虫初步:从访问网页到数据解析
前言: 网络爬虫这个东西看上去还是很神奇的.不过,如果你细想,或是有所研究就知道,其实爬虫并不那么高深.高深的是在我们的数据量很大的时候,就是当我们网络"图"的回环越来越多的时候, ...
最新文章
- ppcelerator徐旸:新一代移动互联网技术
- 【IBatis.Net】 各种配置说明
- 12项目综合变更设置
- python xrange_Python学习中的知识点(range和xrange)
- 工程数学(数值分析)第六讲:数值微积分
- Thread.Sleep太久,界面卡死
- 南京电子地图下载 离线电子地图
- 思科CCNP培训中OSPF协议之详细图解-IELAB
- 简述java重载和重写的相同点_方法的重载和重写的异同之处
- 模板消息php40008,企业微信发送模板消息 40008 Warning: wrong json format. ?
- 北理计算机优营会被鸽吗,被放鸽子以后~
- 湖北移动B863AV3.1-M2_S905L3A_UWE5621DS_安卓9语音线刷包--支持语音-首页正常-设置不要密码-灯正
- Azure-发布个人静态网站
- WhatsApp电脑版和WhatsApp网页版区别?
- EPUB电子书阅读与制作
- php 抢红包_用PHP实现的抢红包小程序
- 3.7 矩阵最小二乘广义逆
- 运放放大倍数计算公式_模电的半壁江山——运算放大器的原理和应用
- 算法小结 之 蛮力法
- 使用socket解决,网页应用监控用户唯一在线