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 相关文章推荐
使用Python脚本在Linux下实现部分Bash Shell的教程
Apr 17 Python
python微信跳一跳游戏辅助代码解析
Jan 29 Python
Python自定义函数实现求两个数最大公约数、最小公倍数示例
May 21 Python
Python高级用法总结
May 26 Python
python实现移位加密和解密
Mar 22 Python
opencv3/C++图像像素操作详解
Dec 10 Python
Python基于codecs模块实现文件读写案例解析
May 11 Python
python 实现aes256加密
Nov 27 Python
python代码实现猜拳小游戏
Nov 30 Python
解决pytorch 损失函数中输入输出不匹配的问题
Jun 05 Python
Python 的 sum() Pythonic 的求和方法详细
Oct 16 Python
Python Matplotlib绘制等高线图与渐变色扇形图
Apr 14 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
Syphon 虹吸式咖啡壶冲煮–拨动法
2021/03/03 冲泡冲煮
Laravel4中的Validator验证扩展用法详解
2016/07/26 PHP
JQuery 选择器 xpath 语法应用
2010/05/13 Javascript
jQuery的12招常用技巧分享
2011/08/08 Javascript
获取表单控件原始(初始)值的方法
2013/08/21 Javascript
javascript 上下banner替换具体实现
2013/11/14 Javascript
jQuery获得内容和属性方法及示例
2013/12/02 Javascript
用Javascript获取页面元素的具体位置
2013/12/09 Javascript
javascript实现依次输入input自动定焦
2014/12/23 Javascript
js判断手机和pc端选择不同执行事件的方法
2015/01/30 Javascript
js计算德州扑克牌面值的方法
2015/03/04 Javascript
使用nodejs开发cli项目实例
2015/06/03 NodeJs
jquery事件的ready()方法使用详解
2015/11/11 Javascript
学习javascript面向对象 理解javascript原型和原型链
2016/01/04 Javascript
Bootstrap表单组件教程详解
2016/04/26 Javascript
vue监听scroll的坑的解决方法
2017/09/07 Javascript
Angular实现预加载延迟模块的示例
2017/10/12 Javascript
详解javascript 正则表达式之分组与前瞻匹配
2018/05/30 Javascript
微信小程序实现签到功能
2018/10/31 Javascript
vue ssr 实现方式(学习笔记)
2019/01/18 Javascript
js 对象使用的小技巧实例分析
2019/11/08 Javascript
在Django model中设置多个字段联合唯一约束的实例
2019/07/17 Python
Python2与Python3的区别详解
2020/02/09 Python
Python自动重新加载模块详解(autoreload module)
2020/04/01 Python
html5移动端自适应布局的实现
2020/04/15 HTML / CSS
世界上最值得信赖的多日游在线市场:TourRadar
2018/07/20 全球购物
匈牙利超级网上商店和优惠:Alza.hu
2019/12/17 全球购物
批评与自我批评材料
2014/02/15 职场文书
语文教学随笔感言
2014/02/18 职场文书
感恩父母的演讲稿
2014/05/06 职场文书
银行会计主管岗位职责
2014/10/01 职场文书
六一儿童节开幕词
2015/01/29 职场文书
致运动员加油稿
2015/07/21 职场文书
2016年教师党员公开承诺书
2016/03/24 职场文书
Node实现搜索框进行模糊查询
2021/06/28 Javascript
MySQL Shell import_table数据导入的实现
2021/08/07 MySQL