使用jsoup爬虫超时分析与处理
1.请求头信息得一致
当你捕获到一个采用JSOUP
去请求超时的链接,我是通过catch
去发现。
try{
doc = Jsoup.connect(url)
.header("User-Agent", "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:49.0) Gecko/20100101 Firefox/49.0")
.header("Connection", "close")//如果是这种方式,这里务必带上
.timeout(8000)//超时时间
.get();
} catch (Exception e) {//可以精确处理timeoutException
//超时处理
}
通过try···catch
去发现超时,然后结合自己的处理,这里要说几个问题。
- 请求头信息,在你尝试去爬取对方的内容的时候,需要尽可能的和你在http浏览器请求的请求头一致,注意是请求头,不是相应头。
- 在请求头里务必加上
Connection:close
,有同学可能会问,这个不是相应头里的吗?是的,有的时候你看到在请求头里,有的时候看到在相应头里,而且一般是Connection:keep-alive
,你加上就可以了。下面会讲到。 - 当发现对方拒绝请求的时候,把浏览器里看到的请求头全部加上,甚至 Cookie 也加上,注意换行和空格,需要自己处理下。尽量一行。
- 如果对方网站过弱,请采用单线程爬取,要不然会大量超时,甚至把对方
Kill
了。 - 如果对方有 IP 限制,采用 IP 代理,或者频率放缓慢一点。
下面看两张图对比下。
使用jsoup爬虫超时分析与处理相关推荐
- python3 爬虫 requests安装_BOSS直聘招聘信息获取之爬虫工具分析
点击蓝色"不太灵光的程序员"关注我哟 加个"星标",每天上午 09:30,干货推送! 文中使用的组件库仅限于Python语言,由于最近收到一些同学的留言说,按照 ...
- jsoup爬虫教程技巧_Jsoup V的幕后秘密:优化的技巧和窍门
jsoup爬虫教程技巧 我们已经把事情做好了,现在是时候加快工作速度了. 我们会牢记Donald Knuth的警告:"大约97%的时间我们应该忘记效率低下:过早的优化是万恶之源". ...
- jsoup爬虫,爬取全站代码
最近使用jsoup扒了几个网站,感觉bug改的差不多了,于是写出来与大家分享. 首先我会把爬虫基础的爬取思路与部分重要方法展示出来,最后我会把全部代码贴出来.并且我会写一个Main类,里面就是爬虫的模 ...
- jsoup爬虫简书首页数据做个小Demo
代码地址如下: http://www.demodashi.com/demo/11643.html 昨天LZ去面试,遇到一个大牛,被血虐一番,发现自己基础还是很薄弱,对java一些原理掌握的还是不够稳固 ...
- Java+Jsoup爬虫小红书
源码链接:https://pan.baidu.com/s/1oOAxJqSMCyVJPNv-iAYW7A 提取码:1co9 Java+Jsoup爬虫小红书,微博,B站 爬取地址:https://www ...
- Jsoup爬虫使用记录
背景 学习 Android 到一段时间,想自己做一些项目练练手,需要数据怎么办呢? - 自己造数据 - 少量的假数据 利用数组或者集合来存储少量数据. - 大量的后台数据 这里的数据是指,自己获取数据 ...
- 【Java】Jsoup爬虫,一个简单获取京东商品信息的小Demo
简单记录 - Jsoup爬虫入门实战 数据问题?数据库获取,消息队列中获取中,都可以成为数据源,爬虫! 爬取数据:(获取请求返回的页面信息,筛选出我们想要的数据就可以了!) 我们经常需要分析HTML网 ...
- Java+Jsoup爬虫微博
源码链接:https://pan.baidu.com/s/1oOAxJqSMCyVJPNv-iAYW7A 提取码:1co9 Java+Jsoup爬虫小红书,微博,B站 爬取地址:https://wei ...
- jsoup爬虫技术精通_精通业务的同时保持技术的3种方法
jsoup爬虫技术精通 上周,我很幸运地参加了2017年红帽峰会 . 我们与客户,分析师和记者举行了无数次会议和情况介绍会. 在会议之间走动时,我开始思考一个挑战,这对许多技术人员来说是一个挑战,因为 ...
- Python之网络爬虫(selenium爬取动态网页、爬虫案例分析、哈希算法与RSA加密)
文章目录 一.selenium爬取动态网页 二.爬虫案例分析 三.哈希hash算法与RSA加密 一.selenium爬取动态网页 1.动态网页认知 爬虫其实就是在模仿浏览器的行为 应对要多次数据的交互 ...
最新文章
- python libusb1库
- 新建centos6虚拟机黑屏_虚拟机centos无法进去选择系统界面,也就是开机过bios就黑屏解决方案...
- html登录界面设计代码_.NET 5 开发WPF - 美食应用登录UI设计
- list array解析(总算清楚一点了)
- 【HDU - 6183】Color it(CDQ分治 或 动态开点线段树)
- mysql中表格 列变行_MySQL数据透视表的列数据作为行
- 中继链路,以太网通道,DHCP配置
- centos7源码编译安装mariadb
- 基于GPT2的中文闲聊机器人/GPT2 for Chinese chitchat
- Prescan(七):prescan中air传感器的配置
- 快速学会网页中鼠标经过图片放大效果
- 谷歌浏览器插件自动点击程序
- APP优化 启动速度优化
- 直插电阻色环电阻读电阻阻值,电阻误差与电阻温度系数方法图文
- RuntimeError: stack expects each tensor to be equal size, but got [8] at entry 0 and [2] at entry 2
- 算法4 随书 IDE:DrJava 在 Win10 下高分屏字体太小问题解决
- 欧盟《一般数据保护条例》(GDPR)你需要知道的
- zip4j对处理压缩包及压缩包加密处理
- pands 画图 调整大小_保安10年苦练画图终成大神,用电脑自带的画图软件创作出惊人作品...
- 利用ipv6搭建一台服务器