Python批量查询域名是否被注册过
Python  /  管理员 发布于 7年前   331
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_enginefrom sqlalchemy.orm import sessionmakerfrom sqlalchemy.ext.declarative import declarative_baseimport requestsimport jsonfrom html.parser import HTMLParserrequest_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.dataBase = 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批量查询域名是否被注册过,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对站的支持!
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号
