/**

* Created by PhpStorm.

* User: Administrator

* Date: 14-9-1

* Time: 下午2:00

*/

error_reporting(E_ALL);

require './source/class/class_core.php';

$discuz = & discuz_core::instance();

//$cachelist = array('plugin');

$discuz->cachelist = $cachelist;

$discuz->init();

/**

* 远程打开URL

* @param string $url   打开的url, 如

* @param int $limit   取返回的数据的长度

* @param string $post   要发送的 POST 数据,如uid=1&password=1234

* @param string $cookie 要模拟的 COOKIE 数据,如uid=123&auth=a2323sd2323

* @param bool $bysocket TRUE/FALSE 是否通过SOCKET打开

* @param string $ip   IP地址

* @param int $timeout   连接超时时间

* @param bool $block   是否为阻塞模式

* @return    取到的字符串

*/

function uc_fopen($url, $limit = 0, $post = '', $cookie = '', $bysocket = FALSE, $ip = '', $timeout = 50, $block = false) {

$return = '';

$matches = parse_url($url);

!isset($matches['host']) && $matches['host'] = '';

!isset($matches['path']) && $matches['path'] = '';

!isset($matches['query']) && $matches['query'] = '';

!isset($matches['port']) && $matches['port'] = '';

$host = $matches['host'];

$path = $matches['path'] ? $matches['path'].($matches['query'] ? '?'.$matches['query'] : '') : '/';

$port = !empty($matches['port']) ? $matches['port'] : 80;

if($post) {

$out = "POST $path HTTP/1.0\r\n";

$out .= "Accept: **\r\n";

//$out .= "Referer: $boardurl\r\n";

$out .= "Accept-Language: zh-cn\r\n";

$out .= "User-Agent: $_SERVER[HTTP_USER_AGENT]\r\n";

$out .= "Host: $host\r\n";

$out .= "Connection: Close\r\n";

$out .= "Cookie: $cookie\r\n\r\n";

}else {

$out = "GET $path HTTP/1.0\r\n";

$out .= "Accept: */*\r\n";

//$out .= "Referer: $boardurl\r\n";

$out .= "Accept-Language: zh-cn\r\n";

$out .= "User-Agent: $_SERVER[HTTP_USER_AGENT]\r\n";

$out .= "Host: $host\r\n";

$out .= "Connection: Close\r\n";

$out .= "Cookie: $cookie\r\n\r\n";

}

$fp = @fsockopen(($ip ? $ip : $host), $port, $errno, $errstr, $timeout);

if(!$fp) {

return '';//note $errstr : $errno \r\n

} else {

stream_set_blocking($fp, $block);

stream_set_timeout($fp, $timeout);

@fwrite($fp, $out);

$status = stream_get_meta_data($fp);

if(!$status['timed_out']) {

while (!feof($fp)) {

if(($header = @fgets($fp)) && ($header == "\r\n" || $header == "\n")) {

break;

}

}

$stop = false;

while(!feof($fp) && !$stop) {

$data = fread($fp, ($limit == 0 || $limit > 8192 ? 8192 : $limit));

$return .= $data;

if($limit) {

$limit -= strlen($data);

$stop = $limit <= 0;

}

}

}

@fclose($fp);

$lenth=strlen($return);

$return=substr($return,1,$lenth-2);

return json_decode($return,true);

}

}

$return=uc_fopen('http://d.360buy.com/area/get?fid=0');

/*function  getdata($id=0){

$string='';

$arr=uc_fopen('http://d.360buy.com/area/get?fid='.$id);

$length=$id?$lenth=count($arr):34;

for($i=0;$i

$string.=$arr[$i]['name'];

sleep(5);

getdata($arr[$i]['id']);

}

return $string;

}*/

@$fp = fopen("sql.txt","w");

if(!$fp){

echo "system error";

exit();

}

for($i=0;$i<34;$i++){

//echo "insert into ultrax_common_district_Tmp (code,name,upcode,level) value (".$return[$i]['id'].",'".$return[$i]['name']."',0,0);
";

$city=uc_fopen('http://d.360buy.com/area/get?fid='.$return[$i]['id']);

sleep(1);

for($j=0;$j

//$fileData="insert into ultrax_common_district_Tmp (code,name,upcode,level) value (".$city[$j]['id'].",'".$city[$j]['name']."',".$return[$i]['id'].",1);\n";

//fwrite($fp,$fileData);

//echo "insert into ultrax_common_district_Tmp (code,name,upcode,level) value ('".$city[$j]['id']."',".$city[$j]['name']."',".$return[$i]['id'].",1);
";

$area=uc_fopen('http://d.360buy.com/area/get?fid='.$city[$j]['id']);

$length=count($area);

for($k=0;$k

$fileData="insert into ultrax_common_district_Tmp (code,name,upcode,level) value (".$area[$k]['id'].",'".$area[$k]['name']."',".$city[$j]['id'].",2);\n";

fwrite($fp,$fileData);

//echo "insert into ultrax_common_district_Tmp (code,name,upcode,level) value (".$area[$k]['id'].",'".$area[$k]['name']."',".$city[$j]['id'].",2);\n";

}

sleep(1);

}

}

fclose($fp);

exit;

/*jquery jsonp  无法进行抓取,会出现阻塞的情况*/

echo  $script=<<

var data=$return;

var city=null;

function getdata(id){

$.ajax({

url: "http://d.360buy.com/area/get?fid="+id,

// the name of the callback parameter, as specified by the YQL service

jsonp: "callback",

// tell jQuery we're expecting JSONP

dataType: "jsonp",

// tell YQL what we want and that we want JSON

data: {

format: "json"

},

// work with the response

success: function(response) {

for(var j=0;j

console.log("insert into city (name,upid) values ('"+response[j]["name"]+"',"+id+");
");

}

}

});

}

for(var i= 0;i<34;i++){

var province=data[i];

//setTimeout(getdata(data[i]['id']),1000000000000*i);

for(var j=0;j

alert(province);

setTimeout(getdata(province[j]['id']),1000000000000*j);

}

//document.write("insert into province (name,upid) values ("+data[i]["name"]+"',0);
");

}

php 获得京东的数据,利用php封装函数抓取京东商城省市县数据相关推荐

  1. python抓取京东联盟优惠券_[爬虫]使用python抓取京东全站数据(商品,店铺,分类,评论)...

    网上抓取京东数据的文章,现在要么无法抓取数据,要么只能抓取部分数据,本文将介绍如何抓取京东全站数据,包括商品信息.店铺信息,评论信息,分类信息等. -------------------------- ...

  2. python 抓取解析接口数据_[干货]用python抓取摩拜单车API数据并做可视化分析(源码)...

    原标题:[干货]用python抓取摩拜单车API数据并做可视化分析(源码) 在APP中能看到很多单车,但走到那里的时候,才发现车并不在那里.有些车不知道藏到了哪里:有些车或许是在高楼的后面,由于有GP ...

  3. 把jquery city-picker地区选择插件数据改成微信小程序省市地区数据一样(php代码抓取微信小程序地区数据)

    原版插件 https://github.com/tshi0912/city-picker 资源下载 https://download.csdn.net/download/jianye112/12036 ...

  4. python网站数据写入mysql_python网络爬虫抓取动态网页并将数据存入数据库MySQL

    简述 以下的代码是使用python实现的网络爬虫,抓取动态网页 http://hb.qq.com/baoliao/ .此网页中的最新.精华下面的内容是由JavaScript动态生成的.审查网页元素与网 ...

  5. python抓取数据包_利用python-pypcap抓取带VLAN标签的数据包方法

    1.背景介绍 在采用通常的socket抓包方式下,操作系统会自动将收到包的VLAN信息剥离,导致上层应用收到的包不会含有VLAN标签信息.而libpcap虽然是基于socket实现抓包,但在收到数据包 ...

  6. [Python] python + selenium 抓取 京东商品数据(商品名称,售价,店铺,分类,订单信息,好评率,评论等)

    目录 一.环境 二.简介 三.京东网页分析 1.获取商品信息入口--商品列表链接获取 2.获取商品信息入口--商品详情链接获取 3.商品详情获取 4.商品评论获取 四.代码实现 五.运行结果 六.结语 ...

  7. python爬取京东图书_Python抓取京东图书评论数据

    Python抓取京东图书评论数据 来源:中文源码网    浏览: 次    日期:2018年9月2日 [下载文档:  Python抓取京东图书评论数据.txt ] (友情提示:右键点上行txt文档名- ...

  8. 利用火狐浏览器抓取京东Cookie教程

    这里以抓取京东CK为例子. 1. 打开火狐浏览器,新建隐私窗口. 地址栏输入 https://wqs.jd.com/ 回车 打开京东网站后 点击右上角 登录,如下图,选择账号密码登录.记住,一定要选这 ...

  9. python爬取网店数据_Python爬虫实现抓取京东店铺信息及下载图片功能示例

    本文实例讲述了Python爬虫实现抓取京东店铺信息及下载图片功能.分享给大家供大家参考,具体如下: 这个是抓取信息的 from bs4 import BeautifulSoup import requ ...

  10. Python之网络爬虫(验证码、代理IP、防反爬策略、封装一个抓取页面的函数)

    文章目录 一.使用tesseract做OCR验证码识别 二.代理服务器设置 三.反爬与防反爬 四.封装一个抓取页面的函数 一.使用tesseract做OCR验证码识别 1.cookie, sessio ...

最新文章

  1. 聚类热图怎么按自己的意愿调整分支的顺序?
  2. jodd忽略ssl证书_Jodd - Java界的瑞士军刀,无法想象的轻量级工具包
  3. odoo12 mysql_odoo12从零开始:二、1)个性化定制odoo12之修改数据库创建页面
  4. 原始Junit测试Spring的问题
  5. 为什么要有 hash 和 history
  6. 译 | 你到底有多精通 C# ?
  7. RabbitMQ 添加用户(入门试炼_第2篇)
  8. 【字体分享】这么Q萌的字母设计你肯定没见过
  9. 视觉跟踪近年来的进展(2010年以前)——Advances in Visual Tracking
  10. 多声道音频指南(二)—— 前世与今生
  11. csgo 简单发光透视
  12. android 二维码扫描动画实现
  13. 谷歌浏览器获取摄像头
  14. php是一种什么脚本语言
  15. 企业公众号怎么做内容?这四个阶段要做好
  16. Vue中的@blur和@focus事件
  17. 主动降噪耳机哪个牌子性价比最高?千元内主动降噪耳机推荐
  18. OpenLayers结合Turf实现空间运算
  19. NF_Exp4_20164306
  20. flv 文件格式解析

热门文章

  1. Arduino 交通灯实验
  2. FPGA实现IIC协议(一)IIC总线协议
  3. office 打开wps乱_wps和office冲突怎么办
  4. c专家编程(C专家编程pdf)
  5. USB协议架构及驱动架构
  6. 纤亿通教你如何选择合适的 Cat6 网线
  7. 结构梁配筋最牛插件_国内外好用的Revit插件汇总
  8. Android 测试
  9. 【转载】MINI2440 TD35 P35触摸屏不能使用? 让我们来把一线触控改四线触控
  10. EXCEL——处理大批量数据