通过fsockopen()方法从中国福彩网获取双色球历史中奖数据
# 以下代码基于 CI 框架 #
public function history_draw($page = 0)
{
set_time_limit(0); $page++;
$up2now = date('Y-m-d');
$fp = fsockopen('www.cwl.gov.cn', 80, $errno, $errstr, 60) or die('fsockopen失败:' . $errno . $errstr);
$out = <<<EOL
GET http://www.cwl.gov.cn/cwl_admin/kjxx/findDrawNotice?name=ssq&issueCount=&issueStart=&issueEnd=&dayStart=2003-01-01&dayEnd={$up2now}&pageNo={$page} HTTP/1.1
Host: www.cwl.gov.cn
Connection: keep-alive
Accept: application/json, text/javascript, */*; q=0.01
X-Requested-With: XMLHttpRequest
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36
Referer: http://www.cwl.gov.cn/kjxx/ssq/kjgg/
Accept-Encoding: gzip, deflate, sdch
Accept-Language: zh-CN,zh;q=0.8,en;q=0.6
Cookie: UniqueID=3dauCXLoQK01tDVH1575514942401; Sites=_21; 21_vq=6; _ga=GA1.3.1090297853.1575514946; _gid=GA1.3.447342718.1575514946; _Jo0OQK=4A1B07EC59D1342CFCAA246B2A0002154A53049E0E5B207A6D0A66050057CE12B9F70A1581661090506815D462089F11972544962C45EF0BF16418257266B0B3233F1B3C19C5B2FC5F8E6E66EDA7420CD4BE6E66EDA7420CD4BD84331FADDCD4DAC3328EEBACF9E4A3CGJ1Z1fQ==
\r\n\r\n
EOL; fwrite($fp, $out);
$data = '';
while (!feof($fp)) {
$data .= fgets($fp, 128);
}
fclose($fp); $result = substr($data, strpos($data, '{'));
$result = json_decode($result, true);
$records = $result['countNum'];
$total_page = $result['pageCount']; if ($page > $total_page) {
exit('数据写入完成');
} foreach ($result['result'] as $value) {
$red = explode(',', $value['red']);
$new[] = array(
'issue' => $value['code'],
'draw_date' => substr($value['date'], 0, 10),
'blue' => $value['blue'],
'red_1' => $red[0],
'red_2' => $red[1],
'red_3' => $red[2],
'red_4' => $red[3],
'red_5' => $red[4],
'red_6' => $red[5],
);
}
$this->db->insert_batch('dual_ball', $new); echo '2003-01-01 至 '. $up2now . ' 总开奖期数为:' . $records .',已插入' . count($new);
echo '<br>'; if ($total_page > 1) {
sleep(1);
$this->history_draw($page);
}
}
SQL文件下载:
https://files.cnblogs.com/files/gentsir/dual_ball.zip
通过fsockopen()方法从中国福彩网获取双色球历史中奖数据的更多相关文章
- vue.js 父组件主动获取子组件的数据和方法、子组件主动获取父组件的数据和方法
父组件主动获取子组件的数据和方法 1.调用子组件的时候 定义一个ref <headerchild ref="headerChild"></headerchild& ...
- android从中国天气网获取天气
http://download.csdn.net/detail/sun6223508/8011669 里面的一切..可完全移植 版权声明:本文博主原创文章.博客,未经同意不得转载.
- Python爬网——获取安卓手机统计数据
[本文出自天外归云的博客园] 1. 在安卓网上对热门机型进行爬网,取前五十: # -*- coding: utf-8 -*- import requests,re from bs4 import Be ...
- vue 父组件主动获取子组件的数据和方法 子组件主动获取父组件的数据和方法
Header.vue <template> <div> <h2>我是头部组件</h2> <button @click="getParen ...
- 第十二、模块二、调用中国天气网和qqOnline及TrainTimeWebService接口来突出Json方法
一. 浏览网页的时候,发送的请求.服务器反回来的永远是字符串,由于服务器后台使用的语言不通,所以就需要用工具反解,这里用到了json json方法一 json.loads()将字符串转化为python ...
- C#获取中国天气网免费天气预报信息
中国天气网接口地址:”http://wthrcdn.etouch.cn/WeatherApi?citykey=” + weatherCityCode(为城市code); 下面是转化过程中我们需要用到的 ...
- 中国知网(cnki)上caj格式转pdf的方法 ----------------- 转载
原文地址: https://blog.csdn.net/edogawachia/article/details/85340636 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议 ...
- scrapy实例:爬取中国天气网
1.创建项目 在你存放项目的目录下,按shift+鼠标右键打开命令行,输入命令创建项目: PS F:\ScrapyProject> scrapy startproject weather # w ...
- 中国天气网API接口
http://www.weather.com.cn/data/sk/101010100.html http://www.weather.com.cn/data/cityinfo/101010100.h ...
随机推荐
- 我的.NET之路
有时感觉知识比较零散,做个总结形成自己的知识体系,方便查阅[持续更新...] C#语法特性 .Net FrameWork发展史 C# 语言版本发展史 1.NET体系结构 [C#与.NET的关系.公共语 ...
- html5有哪些新特性?如何处理html5新标签的浏览器兼容问题?如何区分html和html5?
h5新特性: 语义化标签:<hrader></header> .<footer></footer>.<nav></nav>.&l ...
- BZOJ 1802: [Ahoi2009]checker
题目描述 若有两个红格相邻 第一问的答案为0,所有位置上的棋子都可以通过在这两个格子上放棋子得到 第二设f[i]表示想让第i个格子上有棋子需要放的棋子数 若没有,第一问答案为偶数格子上白格的个数,第二 ...
- Java中Set真的是无序的吗?
我们经常听说List是有序且可重复的,Set是无序且不重复的.这是一个误区,这里所说的顺序有两个概念,一是按照添加的顺序排列,二是按,照自然顺序a-z排列.Set并不是无序的传统所说的Set无序指的是 ...
- 最长公共子序列长度(dp)
/// 求两个字符串的最大公共子序列长度,最长公共子序列则并不要求连续,但要求前后顺序(dp) #include <bits/stdc++.h> using namespace std; ...
- EAccessViolation
Access Violation(非法访问),General Protection Fault(一般保护性错误)或者Invalid Page Fault(无效页面错误),虽然说法不一样,但本质上总是由 ...
- 解决启动redis出现的creating server tcp listening socket *:6379: listen: unknown error
今天运行redis服务端时候出现这个问题: D:\php\software\redis>redis-server.exe [] Dec ::00.797 # Warning: no config ...
- ThinkPHP 5.1 跨域中间件
<?php namespace app\http\middleware; class CrossDomain { public function handle($request, \Closur ...
- Python爬虫实例项目
WechatSogou [1]- 微信公众号爬虫.基于搜狗微信搜索的微信公众号爬虫接口,可以扩展成基于搜狗搜索的爬虫,返回结果是列表,每一项均是公众号具体信息字典. DouBanSpider [2]- ...
- Android: NDK中的Android.mk和Application.mk
1. 简介 Android.mk 可用来描述要编译的某个具体模块的相关信息.比如:指定编译该模块时所需要的源文件.编译该模块时要链接的库文件.该模块编译完成后生成的库的名字等等.Applicatio ...