python实现同服网站地址获取

说明:程序使用http://s.tool.chinaz.com/same此网站查询的结果,使用python简单的实现抓取结果

先随便查询一个结果,抓包分析,如图:

使用python模仿post表单,使用正则表达式匹配结果

代码如下:

# -*- coding: utf-8 -*-
import urllib
import urllib2
import re
import sys

#get url in the same ip
def get_url(url):
    #set header info
    headers = {
               'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/34.0.1847.116 Safari/537.36',
               'Referer': 'http://s.tool.chinaz.com/same'
               }
    postdata = urllib.urlencode({'s':url})
    req = urllib2.Request('http://s.tool.chinaz.com/same',postdata,headers)
    try:
        result = urllib2.urlopen(req)
    except:
        print 'Failed to open url,you can try again...'
        return
    fweb = result.read()
    #.</span> <a href='http://www.31hzp.com'
    pattern = re.compile(r'</span> <a href=\'(.+?)\'')
    match = pattern.findall(fweb)
    filename = str(url).replace(':', '').replace('\\', '')
    fp = open(filename+'.txt','w')
    if match:
        for m in match:
            fp.write(m)
            fp.write('\n')
            print m
    else:
        print 'find nothing...'
    fp.close()
#usage
def usage(name):
    #www.31jmw.com
    print '%s www.xxx.com'%name
    sys.exit(1)
#entry point
if __name__ == '__main__':
    if len(sys.argv) != 2:
        usage(sys.argv[0])
    print 'start...'
    url = "".join(sys.argv[1])   #取出列表中的字符串
    #print url
    get_url(url)
    print 'end...'

测试结果如下:

F:\mycode\python\pytest\src>ipsamescan.py www.31jmw.com
start...
http://www.31hzp.com
http://100ec.cn
http://ec100.cn
http://toocle.cn
http://www.31jmw.com
http://www.31expo.com
http://www.toocle.cn
http://561288.com
http://www.toocle.com.cn
http://www.31metals.com
http://31expo.com
http://www.100ec.cn
end...
时间: 2024-10-10 07:54:19

python实现同服网站地址获取的相关文章

python实现同服站点地址获取

说明:程序使用http://s.tool.chinaz.com/same此站点查询的结果.使用python简单的实现抓取结果 先随便查询一个结果,抓包分析,如图: 使用python模仿post表单,使用正則表達式匹配结果 代码例如以下: # -*- coding: utf-8 -*- import urllib import urllib2 import re import sys #get url in the same ip def get_url(url): #set header inf

根据Email域名获取Email网站地址

/**      * 根据邮箱获取邮箱网址      * @param $email      * @return bool|string      */     public static function getEmail($email)     {         $data = array(             '163.com' => 'mail.163.com',             'vip.163.com' => 'vip.163.com',             '

[转载]python实现带验证码网站的自动登陆

    原文地址:python实现带验证码网站的自动登陆作者:TERRY-V 早听说用python做网络爬虫非常方便,正好这几天单位也有这样的需求,需要登陆XX网站下载部分文档,于是自己亲身试验了一番,效果还不错. 本例所登录的某网站需要提供用户名,密码和验证码,在此使用了python的urllib2直接登录网站并处理网站的Cookie. Cookie的工作原理: Cookie由服务端生成,然后发送给浏览器,浏览器会将Cookie保存在某个目录下的文本文件中.在下次请求同一网站时,会发送该Coo

无比强大!Python抓取cssmoban网站的模版并下载

Python实现抓取http://www.cssmoban.com/cssthemes网站的模版并下载 实现代码 # -*- coding: utf-8 -*- import urlparse import urllib2 import re import os import os.path URL='http://www.cssmoban.com/cssthemes' #全局超时设置 urllib2.socket.setdefaulttimeout(500) #根据url获取内容 def ge

python爬取某个网站的图片并保存到本地

python爬取某个网站的图片并保存到本地 #coding:utf-8 import urllib import re import sys reload(sys) sys.setdefaultencoding('gb2312') #获取整个页面的数据 def getHtml (url): page = urllib.urlopen(url) html = page.read() return html #保存图片到本地 def getImg(html): reg = r'src="(.+?\.

【CURL】模拟登录网站并获取用户信息

模拟登录网站并获取用户信息 前言 这次来做的是通过代码的方式,模拟登录秒拍官网,获取登录用户的信息. 前后端分离 本文的标题是CURL,传统的网站是PHP代码直接渲染项目视图,通过表单提交到控制器直接进行数据操作. 传统模拟登录的方式在页面上找到表单元素,直接进行模拟表单提交. 近两年前端技术趋于完善,实现了前后端分离. 分析页面元素 秒拍官网地址 http://www.miaopai.com/ 通过审查元素以及源代码查找,在本页面并没有form标签,由此推断页面是通过js进行提交的. 查找提交

JAVA根据IP地址获取详细的地域信息

在系统中网站的头部一般都有显示是哪个城市的用户进入到网站的首页后默认城市应该是用户本地的城市信息例如北京网站就要根据你的IP地址的信息查询数据获取北京部分的数据呵呵当然我可能描述的不是很清楚但是可以理解成通过IP地址定位地理信息就行.很多人现在使用以QQ数据库为基础获取地址信息但不完整.而且不规范.互联网提供很多其他接口可以完成这项功能. 接口如下 通过淘宝IP地址库获取IP位置 1. 请求接口GEThttp://ip.taobao.com/service/getIpInfo.php?ip=[i

方案优化:网站实现扫描二维码关注微信公众号,自动登陆网站并获取其信息

上一篇  <网站实现扫描二维码关注微信公众号,自动登陆网站并获取其信息> 中已经实现用户扫码登陆网站并获取其信息 但是上一篇方案中存在一个问题,也就是文章末尾指出的可以优化的地方(可以点击这个链接去看一下上篇文章) 首先回顾一下上一篇的思路: 1,微信的系统,提供生成带参数的二维码的接口,这个参数就是唯一值(场景值)  2,网站调用微信系统,获取生成的二维码图片  3,用户扫码会直接调用微信服务器,将用户访问微信服务器的信息记录到redis,key就是唯一值(场景值)  4,网站端做轮训去查询

python分别使用多线程和多进程获取所有股票实时数据

python分别使用多线程和多进程获取所有股票实时数据 前一天简单介绍了python怎样获取历史数据和实时分笔数据,那么如果要获取所有上市公司的实时分笔数据,应该怎么做呢? 肯定有人想的是,用一个列表存储所有上市公司的股票代号,然后无限循环获取不就得了吗? 现在深市和沪市的股票一共有3400多只,如果你真这样做的话,获取一次所有股票的实时数据需要十几二十秒的时间,甚至更多,而且非常容易因为等待超时而使程序挂掉,如果你的模型对实时数据的质量要求非常高,这肯定是不行的,即使不考虑数据质量,获取数据的