java抓取快递100信息接口
package zeze; import java.io.IOException; import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import org.jsoup.Connection;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.select.Elements; /**
*
* @ClassName: Tiantian
* @Description: 快递100天天快递查询
* @author zeze
* @date 2015年11月2日 下午2:28:46
*
*/
public class Tiantian { public static void main(String[] args) throws IOException, JSONException {
String url = "http://www.kuaidi100.com/query?type=tiantian&postid=666198673845&id=1&valicode=&temp=0.42161923577077687";// 获取地址
int num = 0;
// 设置查询参数
for (int j = 0; j < 1; j++) { Connection conn = Jsoup.connect(url);
String key = "666198673845";
String b = key.substring(0, 5);
String c = key.substring(5, 12); int d = Integer.parseInt(c);
key = b + (d + j);// 生成快递单号
conn.data("postid", key);// 设置关键字查询字段 Document doc = null;
doc = conn.timeout(100000).get();// 设置请求类型为post型,超时100000毫秒 Elements results = null;
System.out.println("天天快递单号:" + key + " 当前查询次数:" + (j + 1));
results = doc.select("body");// 处理返回数据
String json = results.text();// 获取快递状态信息
System.out.println(json);
JSONObject obj = new JSONObject(json);
//JSONArray jsonArray=new JSONArray(json);
System.out.println("订单号(nu):"+obj.getString("nu"));
System.out.println("查询的快递公司代码(com):"+obj.getString("com"));
System.out.println("查询结果状态(status):"+obj.getString("status"));
System.out.println("快递单当前的状态(state) :"+obj.getString("state"));
System.out.println("数据(data):"+obj.getString("data")); JSONArray jsonArray=new JSONArray(obj.getString("data"));
for(int i=0;i<jsonArray.length();i++)
{
JSONObject jsonObject = jsonArray.getJSONObject(i);//时间
String context = jsonObject.getString("context");
String time = jsonObject.getString("time");
System.out.println(time+" "+context);
} }
System.out.println("本次成功查询到的订单数为:" + num); }
}
package zeze; import java.io.IOException; import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import org.jsoup.Connection;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.select.Elements; import Dao.MysqlDao;
import bean.Info; /**
*
* @ClassName: Tiantian
* @Description: 快递100天天快递查询
* @author zeze
* @date 2015年11月2日 下午2:28:46
*
*/
public class Tiantian { public static void main(String[] args) throws IOException, JSONException { int num = 0;
// 设置查询参数
for (int j = 0; j < 200; j++) { String key = "666198673945";
String b = key.substring(0, 5);
String c = key.substring(5, 12);
int d = Integer.parseInt(c);
key = b + (d + j);// 生成快递单号 String url = "http://www.kuaidi100.com/query?type=tiantian&postid=" + key + "";// 获取地址
Connection conn = Jsoup.connect(url);// 连接
conn.data("postid", key);// 设置关键字查询字段 Document doc = null;
doc = conn.timeout(100000).get();// 设置请求类型为post型,超时100000毫秒 Elements results = null;
results = doc.select("body");// 处理返回数据
String json = results.text();// 获取快递状态信息 JSONObject obj = new JSONObject(json); // 转为为json对象
int statu=Integer.parseInt(obj.getString("status"));
if ( statu== 201) {
System.out.println("快递单号:" + key + " 当前查询次数:" + (j + 1));
System.out.println(obj.getString("message"));
continue;
}
else {
if (obj.getString("nu").isEmpty()) {// 订单号不存在
continue;
}
else {
num++;
}
System.out.println("快递单号(nu):" + obj.getString("nu") + " 当前查询次数:" + (j + 1));
System.out.println("查询的快递公司代码(com):" + obj.getString("com"));
System.out.println("查询结果状态(status):" + obj.getString("status"));
System.out.println("快递单当前的状态(state) :" + obj.getString("state")); int count = 0;
JSONArray jsonArray = new JSONArray(obj.getString("data"));
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonObject = jsonArray.getJSONObject(i);// 时间
String context = jsonObject.getString("context");
String time = jsonObject.getString("time");
System.out.println(time + " " + context); Info info = new Info();
info.setVar_id(key);
info.setVar_infoid(count);
info.setVar_time(time);
info.setVar_site(context); count++;
MysqlDao mysqlDao = new MysqlDao();// 插入数据库
mysqlDao.Addinfo(info);
} System.out.println("\n/*****************************************/\n");
}
System.out.println("本次成功查询到的订单数为:" + num);
}
}
}
java抓取快递100信息接口的更多相关文章
- java抓取快递信息
package zeze; import java.io.IOException; import org.jsoup.Connection; import org.jsoup.Jsoup; impor ...
- Java广度优先爬虫示例(抓取复旦新闻信息)
一.使用的技术 这个爬虫是近半个月前学习爬虫技术的一个小例子,比较简单,怕时间久了会忘,这里简单总结一下.主要用到的外部Jar包有HttpClient4.3.4,HtmlParser2.1,使用的开发 ...
- PHP快速抓取快递信息
<?php header("Content-type:text/html;charset=utf-8"); /** * Express.class.php 快递查询类 * @ ...
- 教您使用java爬虫gecco抓取JD全部商品信息
gecco爬虫 如果对gecco还没有了解可以参看一下gecco的github首页.gecco爬虫十分的简单易用,JD全部商品信息的抓取9个类就能搞定. JD网站的分析 要抓取JD网站的全部商品信息, ...
- java 抓取网页图片
import java.io.File; import java.io.FileOutputStream; import java.io.InputStream; import java.io.Out ...
- 使用HtmlAgilityPack抓取Ethereum Tokens信息
使用HtmlAgilityPack抓取Ethereum Tokens信息 class Program { static void Main(string[] args) { try { for (in ...
- Python爬虫实战---抓取图书馆借阅信息
Python爬虫实战---抓取图书馆借阅信息 原创作品,引用请表明出处:Python爬虫实战---抓取图书馆借阅信息 前段时间在图书馆借了很多书,借得多了就容易忘记每本书的应还日期,老是担心自己会违约 ...
- scrapy抓取拉勾网职位信息(一)——scrapy初识及lagou爬虫项目建立
本次以scrapy抓取拉勾网职位信息作为scrapy学习的一个实战演练 python版本:3.7.1 框架:scrapy(pip直接安装可能会报错,如果是vc++环境不满足,建议直接安装一个visua ...
- Wireshark抓取本地回环接口数据包 RawCap.exe
Wireshark提供了winpcap可以抓取远程网卡数据包...但我尝试了不成功.后来发现RawCap.exe不仅可以抓取回环接口数据包,远程跑了拿到pcap文件再打开用起来比winpcap更方便最 ...
随机推荐
- JavaScript学习笔记——DOM_对document对象的内容、属性、样式的操作
javascript-对文档对象的内容.属性.样式的操作 一.操作内容 1. innerHTML 用来设置或获取对象起始和结束标签内的内容(识别html标签) 2. innerText 用来设置或获取 ...
- Jetty 简单使用
Jetty与Tomcat类似,也是一种Servlet引擎,可以用来运行Java Web项目. 其常被嵌入到项目中,以便于开发.测试,以及Demo等项目的运行. 1.作为插件——作为开发.测试时项目运行 ...
- centos6.5yum方式升级内核
升级内核需要使用elrepo的yum源,在安装yum源之前还需要我们导入elrepo的key,如下:rpm -import https://www.elrepo.org/RPM-GPG-KEY-elr ...
- Unity Sprite Atlas Compression
http://forum.unity3d.com/threads/2d-sprite-packer-and-pvrtc.218633/ http://docs.unity3d.com/Manual/S ...
- ElasticSearch之一——索引
ElasticSearch索引 ElasticSearch 是一个分布式可扩展的实时搜索引擎,它建立在开源搜索引擎框架Apache Lucene基础上.ElasticSearch 不但包括了全文搜索功 ...
- Python基础之【第二篇】
一.作用域 对作用域来说,只要变量在内存里面存在就可以使用: ==: name = 'saneri' print name 二.三元运算 result = 值1 if 条件 else 值2 如果条件为 ...
- Css常用收集
/*-------------------------------------- 圆角*/ -webkit-border-radius: 4px; -moz-border-radius: 4px; ...
- iOS开发工具-网络封包分析工具Charles
转自唐巧的技术博客:http://blog.devtang.com/blog/2013/12/11/network-tool-charles-intr/ Charles是在Mac下常用的截取网络封包的 ...
- C#通用类型转换 Convert.ChangeType
]; object innerValue = ChangeType(value, innerType); return Activator.CreateInstance ...
- PhpStorm 快捷键
不容易记住的: Ctrl + Shift + F 查找文本,在项目目录或指定的目录 Ctrl + Shift + R 查找文本并替换,在项目目录或指定的目录 Ctrl + E 打开最近关闭的 ...