因为工作的原因,近段时间开始接触jsoup。大概也弄清了用java来爬网页是怎样一个过程。特此,写篇日志以便他日方便查看。
Jsoup是一个java平台的能够对xml文档结构的文档进行解析。有点类似于dom4j吧。但是dom4j是利用流进行内容解析,遇到“《》”的标记进行节点与否的区分。而jsoup之前看了篇文章介绍,存储的方式更接近于java对象的方式。(我个人的看法吧,也不清楚是否准确,望指点!)。
模拟登录的过程也是很简单的。只需要通过网页工具查看目标网站需要提交到的登录地址,再捕获下提交的数据。就大概知道是需要提交什么东西了。需要注意的点是,有的网站是进行redirect重定向的,网页工具在network查看提交数据时为避免跳转导致提交的那条数据过快而被刷掉。可以打开debug中network中的Preserve log。
之后因为java进行测试如果觉得麻烦的话,可以下载个http请求模拟器。推荐骄阳的模拟器。
地址:http://www.crsky.com/soft/34385.html
使用这个模拟器需要注意的点:
提交数据:可以用&进行提交 例如这样子 username=admin&password=123456&
cookie 用;来分隔 cookie1=1;cookie=2;
后台jsoup中connection的几个方法。
con.validateTLSCertificates(false); 是否进行tls证书验证
con.ignoreContentType(true);是否忽略contentType
con.followRedirects(false);是否进行自动处理redirect
con.cookies(cookies); 带上cookie
con.data(data);带上data