#!/usr/bin/evn python
# -*- coding:utf-8 -*-
import json
import urllib2
import datetime
import re
import Queue
import threading
queue = Queue.Queue()
thread = 3
import sys
reload(sys)
sys.setdefaultencoding("utf-8")

days = days = (datetime.datetime.now() - datetime.timedelta(days=1)).strftime('%Y%m%d')
rex = re.compile('OpenPlatfrom')

def writefile(content):
    f = open('check.log','a+')
    f.write(content + '\n')
    f.close()

def Getip_isp(i, q):
    while True:
        ip = q.get()
        url = 'http://ip.taobao.com/service/getIpInfo.php?ip=%s' % ip
        try:
            s = json.loads(urllib2.urlopen(url, timeout=2).readlines()[0])
            s = str(s['data']['isp']) + ',' + str(ip) + ',' + str(ip_dic.get(ip))
        except:
            s = "timeout"
        writefile(s)
        q.task_done()

def readfile():
    isp_dic = {}
    logfile = "/home/log/weblog/elk-web-%s.log" % days
    f = open(logfile)
    for line in f:
        if rex.search(line):
            new = json.loads(json.loads(line.strip())['extra'])
            try:
                isp_dic[new['clientIp']] = new['condIp']
            except:
                pass
    f.close()
    return isp_dic
ip_dic = readfile()
print len(ip_dic)
for k, v in ip_dic.items():
    queue.put(k)
    #isp = Getip_isp(k)
    #print k, isp, v

for i in range(thread):
    run = threading.Thread(target=Getip_isp, args=(i, queue))
    run.setDaemon(True)
    run.start()
#run.join()
queue.join()

淘宝接口-IP返回运营商的更多相关文章

  1. 淘宝接口 TopAPi

    演示一下调用淘宝的接口,让大家心里有个数, 很简单,新建一个工程,拖一个IDHttp,Button和Memo到窗体上去 然后在这个Button的OnClick事件中写入如下代码: [delphi] v ...

  2. 淘宝接口实现ip归属地查询

    <?php header('content-type:text/html;charset=utf-8'); /*获取当前ip归属地 调用淘宝接口 */ function get_ip_place ...

  3. 淘宝免费ip地址查询导致服务堵死的坑

    1.业务中因为想根据用户ip来做一些友好的提示,所以在网上找了个免费的ip查询地址 http://ip.taobao.com/service/getIpInfo.php?ip= 虽然说淘宝的这个地址会 ...

  4. jquery使用淘宝接口跨域查询手机号码归属地实例

    <h1>手机号码归属地查询</h1>    <div class="outer">        <p>请输入手机号码</p& ...

  5. PHP学习笔记13淘宝接口开发一例(tmall.items.discount.search),PHP

    程序设计,因为接口是有请求次数限制的,正式接口也只有2W次每天的请求次数,所以我们需要把从接口返回的数据缓存起来. 采用的接口是http://api.taobao.com/apidoc/api.htm ...

  6. C#根据淘宝接口网址获取客户端访问IP和网络运营商

    网络运营商会为每台联网的电脑分配公网IP,如何获取它们?? 话不多说直接上代码: using System; using System.Collections.Generic; using Syste ...

  7. 新浪网易淘宝等IP地区信息查询开放API接口调用方法

    通过IP地址获取对应的地区信息通常有两种方法:1)自己写程序,解析IP对应的地区信息,需要数据库.2)根据第三方提供的API查询获取地区信息. 第一种方法,参见文本<通过纯真IP数据库获取IP地 ...

  8. 通过淘宝接口免费获取IP地址信息

    1.获取互联网访问IP信息 一般获取互联网访问的IP的相关信息一般都是收费接口,免费的接口不多,我使用到一个接口如下: http://ip.taobao.com/service/getIpInfo.p ...

  9. 使用 淘宝 接口,根据公网ip 获取地理信息

    1.  源码,点击查看 1 import java.io.BufferedReader; 2 import java.io.IOException; 3 import java.io.InputStr ...

随机推荐

  1. tomcat添加https服务

    系统环境: centos6.7 jdk-7u79-linux-x64 apache-tomcat-7.0.57 apr-1.5.2 apr-util-1.5.4 一.tomcat安装 自己准备tomc ...

  2. Git submodule 子模块的管理和使用

    因为代码分了两个小组管理,一部分代码使用跨平台语言实现,一部分使用原生实现. 所以使用Git submodule 来进行管理. 1,查看/更新 子模块 $ git submodule add ssh: ...

  3. PHP二维数组用某个字段的值当做键名

    $array = array( array(','name'=>'tom'), array(','name'=>'jerry'), array(','name'=>'spike') ...

  4. mac python3 安装mysqlclient

    brew install openssl export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/opt/openssl/lib/ pip install mysql ...

  5. mysql IFNULL

    IFNULL(v1,v2); 其中:如果 v1 不为 NULL,则 IFNULL 函数返回 v1; 否则返回 v2 的结果.

  6. httprunner学习13-环境变量.env

    前言 一般来说,在进行实际应用的开发过程中,应用会拥有不同的运行环境,通常会有以下环境: 本地开发环境 测试环境 生产环境 在不同环境中,我们可能会使用不同的数据库或邮件发送驱动等配置,这时候则需要通 ...

  7. httprunner学习10-测试报告ExtentReport

    前言 httprunner默认生成的报告不怎么美观,里面还有第二套报告模板extent_report_template.html. extent_report_template 使用 hrun -h ...

  8. C#程序 -- 以管理员权限运行

    阅读目录 一.判断程序是否以管理员身份运行 C#程序以管理员权限运行 在Vista 和 Windows 7 及更新版本的操作系统,增加了 UAC(用户账户控制) 的安全机制,如果 UAC 被打开,用户 ...

  9. ArcGIS 生成要素轮廓线掩膜

    先说效果: 生成轮廓之前:

  10. cookie,,session,cache,static 浅谈笔记

    cookie:存在于客户端,每次请求伴随httpRequest 到达服务器端,Cookie内保存sessionId,服务器端就是根据Cookie中的SessionId找到用户的专有session , ...