爬虫实例3——获取指定IP地址的物理位置

# -*- coding: utf-8 -*-
import requests
import json

def get_physical_location(ip):
    url = ‘http://ip.taobao.com/service/getIpInfo.php?ip=‘ + ip
    ip_data = requests.get(url).text
    ip_dict = json.loads(ip_data)
    if ip_dict.get(‘code‘):
        print(‘你输入的ip地址格式有误,请仔细检查。‘)
    else:
        country = ip_dict.get(‘data‘).get(‘country‘)
        region = ip_dict.get(‘data‘).get(‘region‘)
        city = ip_dict.get(‘data‘).get(‘city‘)
        return country + region + city

if __name__ == ‘__main__‘:
    print get_physical_location(‘8.8.8.8‘)
时间: 2024-10-10 07:36:21

爬虫实例3——获取指定IP地址的物理位置的相关文章

C#获取指定IP地址的数据库所有数据库实例名

/// <summary> /// 获取指定IP地址的数据库所有数据库实例名. /// </summary> /// <param name="ip">指定的 IP 地址.</param> /// <param name="username">登录数据库的用户名.</param> /// <param name="password">登陆数据库的密码.</p

获取指定IP地址对应的物理位置

# -*- coding: utf-8 -*- import requests def get_physical_location(ip): url = 'http://ip.taobao.com/service/getIpInfo.php?ip=' + ip r = requests.get(url) if r.json()['code']: print '您输入的ip地址有误,请检查后再试.' else: country = r.json()['data']['country'] regio

python绝技 — 使用PyGeoIP关联IP地址和物理位置

准备工作 要关联IP与物理位置,我们需要有一个包含这样对应关系的数据库. 我们可以使用开源数据库GeoLiteCity,它能够较为准确地把IP地址与所在城市关联起来 下载地址:http://dev.maxmind.com/geoip/legacy/geolite/ 下载之后我们解压:xz -d GeoLiteCity.dat.xz,如:/My/lib/ip/GeoLiteCity.dat 安装pygeoip库.这个库用于对GeoLiteCity数据库的查询 代码: #!/usr/bin/pyth

Flask框架获取用户IP地址的方法

本文实例讲述了python使用Flask框架获取用户IP地址的方法.分享给大家供大家参考.具体如下: 下面的代码包含了html页面和python代码,非常详细,如果你正使用Flask,也可以学习一下最基本的Flask使用方法. python代码如下: from flask import Flask, render_template, request # Initialize the Flask application app = Flask(__name__) # Default route,

Linux下编程获取本地IP地址的常见方法

转载于:http://blog.csdn.net/k346k346/article/details/48231933 在进行linux网络编程时,经常用到本机IP地址.本文罗列一下常见方法,以备不时之需. 获取本机IP地址,是一个相当灵活的操作,原因是网络地址的设置非常灵活而且都是允许用户进行个性化设置的.比如一台计算机上可以有多块物理网卡或者虚拟网卡,一个网卡上可以绑定多个IP地址,用户可以为网卡设置别名,可以重命名网卡.用户计算机所在网络拓扑结构未知,主机名设置是一个可选项,并且同样可以为一

wireshark捕获/过滤指定ip地址数据包

转载 转载请注明出处:6san.com 原文地址: http://www.6san.com/630/ wireshark捕获/过滤指定ip地址数据包 使用捕获过滤或显示过滤,wireshark可以仅捕获/显示经过指定ip的数据包,即某个ip收到或发出的所有数据包.wireshark捕获/显示过滤使用方法见:"wireshark过滤器" 显示过滤:wireshark过滤经过指定ip的数据包 显示过滤可以完整的复现测试时的网络环境,但会产生较大的捕获文件和内存占用. ip.addr ==1

Mina获取客户端IP地址问题

使用Mina做Socket通信时,服务器端获取客户端IP地址,其实很简单,代码如下: @Override public void messageReceived(IoSession session, Object message) throws Exception { String clientIP = ((InetSocketAddress)session.getRemoteAddress()).getAddress().getHostAddress(); } 但是有时候却发现,session

proxy-arp引起的无法从DHCP获取到IP地址

公司采用电信光纤,分配了5个IP地址,为了方便使用,将光猫的网线直接接入到交换机中. Cisco 2911路由器的的Outside和Inside的网络都从交换机中接线. 因为Cisco路由器默认是开启proxy-arp,所以当Outside收到广播的ARP信息后,因Inside的网段与广播的网段处于同一个网段,于是路由器就返回了Outside的的MAC地址. 当电脑使用DHCP从服务器获取IP后,检查到此IP地址已经与路由器上的Outside MAC绑定,于是DHCP就错误地认为此IP已经在使用

nodejs 获取客户端 ip 地址

为什么要获取客户端 ip: php:我们需要拿到用户客户端的ip信息,以识别用户位置,但现在我们拿到的地址永远是杭州 前端:我查一下,稍等 .... 明白了,我们加了一层 node 服务器,服务器在杭州,你们拿到的是 node 服务器的 ip php:那怎么办? 前端:我给你加一个 ip 字段吧 php:哦~ 前端:(噼里啪啦噼里啪啦......) 好了,你们看一下有值了吗? php:有了,但值不对,你给我传的是 ::ffff:127.0.0.1 ,前边那一堆 f 是什么鬼,去掉,我们只要后边的