Python批量查询域名是否被注册过


Posted in Python onJune 21, 2017

step1. 找一个单词数据库

这里有一个13万个单词的

http://download.csdn.net/detail/u011004567/9675906

新建个mysql数据库words,导入words里面就行

step2.找个查询接口

这里我用的是http://apistore.baidu.com/astore/serviceinfo/27586.html

step3. 执行Python脚本

# -*- coding: utf-8 -*-
'''
域名注册查询
'''
__author__ = 'Jimmy'
from sqlalchemy import Column, String,Integer, create_engine
from sqlalchemy.orm import sessionmaker
from sqlalchemy.ext.declarative import declarative_base
import requests
import json
from html.parser import HTMLParser
request_failure = []
domain_available = []
def writeToText(list,fn):
  file = open(fn, 'w')
  file.write(str(list))
  file.close()
class bodyJSON(HTMLParser):
  tag = False
  def handle_starttag(self, tag, attr):
    if tag == 'body':
      self.tag = True
  def handle_endtag(self, tag):
    if tag == 'body':
      self.tag = False
  def handle_data(self, data):
    if self.tag:
      self.data = data
  def getJSON(self):
    return self.data
Base = declarative_base()
class Words(Base):
  # 表的名字:
  __tablename__ = 'words'
  # 表的结构:
  ID = Column(Integer(), primary_key=True)
  word = Column(String(100))
  exchange = Column(String(1000))
  voice = Column(String(1000))
  times = Column(Integer())
# 初始化数据库连接:
engine = create_engine('mysql+mysqlconnector://root:846880@localhost:3306/words')
# 创建DBSession类型:
DBSession = sessionmaker(bind=engine)
# 创建Session:
session = DBSession()
# 创建Query查询,filter是where条件,最后调用one()返回唯一行,如果调用all()则返回所有行:
words = session.query(Words).filter(Words.ID).all()
def searchInaaw8(words):
  length = len(words)
  print('====开始搜索...=====共%d个单词' %length)
  for i in range(0,length):
    word = words[i]
    url = 'http://www.aaw8.com/Api/DomainApi.aspx?domain=%s.com' % word.word
    r = requests.get(url)
    if r.status_code == 200:
      if r.headers['Content-Type'] == 'text/html':
        print('第%s个请求被拒绝,url = %s' % (i, url))
      else:
        body = bodyJSON()
        body.feed(r.text)
        res = json.loads(body.getJSON())
        if res['StateID'] == 210:
          print('第%d次,%s.com 未被注册' % (i, word.word))
          domain_available.append(word.word)
        elif res['StateID'] == 0:
          print('第%d次,%s.com 查询接口出错' % (i, word.word))
          request_failure.append(word.word)
        elif res['StateID'] == 211:
          pass
          print('第%d次,%s.com 已经被注册' % (i, word.word))
        elif res['StateID'] == 213:
          print('第%d次,%s.com 查询超时' % (i, word.word))
          request_failure.append(word.word)
        else:
          print('其他错误')
          request_failure.append(word.word)
        body.close()
    else:
      print('请求失败')
      request_failure.append(word.word)
  print('查询结束...')
  print('查询失败:')
  print(request_failure)
  writeToText(request_failure,'failure.text')
  print('未注册域名:')
  print(domain_available)
  writeToText(request_failure,'available.text')
searchInaaw8(words)

step4:放到阿里云就可以搞事情啦

Python批量查询域名是否被注册过

以上所述是小编给大家介绍的Python批量查询域名是否被注册过,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
代码详解django中数据库设置
Jan 28 Python
tensor和numpy的互相转换的实现示例
Aug 02 Python
基于python的列表list和集合set操作
Nov 24 Python
Python FFT合成波形的实例
Dec 04 Python
Python的形参和实参使用方式
Dec 24 Python
keras 指定程序在某块卡上训练实例
Jun 22 Python
使用Python pip怎么升级pip
Aug 11 Python
Python3如何实现Win10桌面自动切换
Aug 11 Python
Django显示可视化图表的实践
May 10 Python
python办公自动化之excel的操作
May 23 Python
python 命令行传参方法总结
May 25 Python
Python字符串的转义字符
Apr 07 Python
Python图片裁剪实例代码(如头像裁剪)
Jun 21 #Python
Python编程实战之Oracle数据库操作示例
Jun 21 #Python
Python获取SQLite查询结果表列名的方法
Jun 21 #Python
基于hashlib模块--加密(详解)
Jun 21 #Python
详谈Python基础之内置函数和递归
Jun 21 #Python
浅谈python内置变量-reversed(seq)
Jun 21 #Python
python 简单的绘图工具turtle使用详解
Jun 21 #Python
You might like
PHP:风雨欲来 路在何方?
2006/10/09 PHP
php getsiteurl()函数
2009/09/05 PHP
PHP与C#分别格式化文件大小的代码
2011/05/14 PHP
PHP URL参数获取方式的四种例子
2014/02/28 PHP
PHP输出英文时间日期的安全方法(RFC 1123格式)
2014/06/13 PHP
php导入excel文件到mysql数据库的方法
2015/01/14 PHP
详解PHP文件的自动加载(autoloading)
2018/02/04 PHP
js实现的网页颜色代码表全集
2007/07/17 Javascript
Javascript !!的作用
2008/12/04 Javascript
DOM Scripting中的图片切换[兼容Firefox]
2010/06/12 Javascript
说明你的Javascript技术很烂的五个原因
2011/04/26 Javascript
父节点获取子节点的字符串示例代码
2014/02/26 Javascript
实现网页页面跳转的几种方法(meta标签、js实现、php实现)
2014/05/20 Javascript
JavaScript DSL 流畅接口(使用链式调用)实例
2015/03/15 Javascript
详解addEventListener的三个参数之useCapture
2015/03/16 Javascript
jquery中ajax跨域方法实例分析
2015/12/18 Javascript
CSS或者JS实现鼠标悬停显示另一元素
2016/01/22 Javascript
JavaScript的MVVM库Vue.js入门学习笔记
2016/05/03 Javascript
jQuery中text() val()和html()的区别实例详解
2016/06/28 Javascript
javascript中apply/call和bind的使用
2017/02/15 Javascript
微信小程序中限制激励式视频广告位显示次数(实现思路)
2019/12/06 Javascript
微信小程序点击view动态添加样式过程解析
2020/01/21 Javascript
React实现类似淘宝tab居中切换效果的示例代码
2020/06/02 Javascript
[03:22]DSPL第一期精彩集锦:酷炫到底!
2014/11/07 DOTA
Python笔记(叁)继续学习
2012/10/24 Python
numpy返回array中元素的index方法
2018/06/27 Python
Python基础之循环语句用法示例【for、while循环】
2019/03/23 Python
Python简单实现词云图代码及步骤解析
2020/06/04 Python
基于python实现MQTT发布订阅过程原理解析
2020/07/27 Python
意大利在线药房:Farmacia Loreto Gallo
2019/08/09 全球购物
size?荷兰官方网站:英国高级运动鞋精品店
2020/07/24 全球购物
2014年出纳工作总结与计划
2014/12/09 职场文书
德能勤绩廉个人总结
2015/02/14 职场文书
加薪申请报告范本
2015/05/15 职场文书
动态规划之使用备忘录来改进Javascript函数
2022/04/07 Javascript
Javascript webpack动态import
2022/04/19 Javascript