python 制作网站筛选工具(附源码)


Posted in Python onJanuary 21, 2021

一.思路

1.整体思路

python 制作网站筛选工具(附源码)

2.代码思路

python 制作网站筛选工具(附源码)

思路很简单,就是用python发送请求,提取响应体中的状态码加以判断,最后保存到本地txt文本中,以实现网站信息的筛选。

二.撰写代码

import time
import requests
import urllib3
from concurrent.futures import ThreadPoolExecutor

#取源文件中的网址并且去重
def get_url(old_file):
  with open(old_file,'r',encoding='gbk')as f:
    urllist=list(set(f.readlines()))
    return urllist

#主体,发送请求,通过异常捕获判断能否响应,通过状态码判断网闸能否正常访问
def request(url):
  url=url.strip()
  #构造请求头信息
  headers = {
    'Connection': 'keep-alive',
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36'
  }
  try:
    #忽略证书安全警告
    urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
    r=requests.get(url,headers=headers,timeout=10,verify=False)#timeout设置超时时间,我设置了10s,使用verif=False忽略sll认证
    if r.status_code==200:
      cost_time=r.elapsed.total_seconds()#计算访问耗时
      print(url,' ----->【能访问】访问耗时:\033[35;46m{:.2f}s\033[0m'.format(cost_time))
      can_access_save_to_txt(url)
    else:
      print(url,' ----->不能访问,状态码为:\033[31;44m{}\033[0m'.format(r.status_code))
  except:
    print(url, ' ----->不能访问,原因:\033[31;44m不能响应\033[0m')


#将能访问的网址保存到new_file
def can_access_save_to_txt(result):
  result=result.strip()
  #筛选出不是.apk的url,此判断可以不加
  if not result.endswith('.apk'):
    with open(aim_file,'a')as f:
      f.write(result+'\n')


def main():
  s_time=time.time()
  #使用线程池,创建四条线程。
  pool=ThreadPoolExecutor(max_workers=4)
  urls=get_url(orign_file)
  for url in urls:
    pool.submit(request,url)
  pool.shutdown()
  e_time=time.time()
  sum_time=int(e_time-s_time)
  if sum_time>60:
    print(f'\033[38;46m 程序正常执行结束退出!共耗时:【{sum_time//60}分钟】 \033[0m')
  elif sum_time/60>1:
    print(f'\033[38;46m 程序正常执行结束退出!共耗时:【{sum_time//60*60}小时】 \033[0m')


if __name__ == '__main__':
  orign_file=r'E:\test.txt'
  #筛选后能访问的网址
  aim_file="./data/test_can_access.txt"
  #筛选后不能访问的网址
  main()

三.运行结果

python 制作网站筛选工具(附源码)

四.总结

本次使用python撰写了一款筛选网站的小工具,将网站大致分为能访问和不能访问两类,将能够访问且状态码为200的网站存储到了文件中,最终实现了网站的筛选。思路、代码方面有什么不足欢迎各位大佬指正、批评!

以上就是python 制作网站筛选工具(附源码)的详细内容,更多关于python 制作网站筛选工具的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python将控制台输出保存至文件的方法
Jan 07 Python
python实现批量修改服务器密码的方法
Aug 13 Python
python 数据生成excel导出(xlwt,wlsxwrite)代码实例
Aug 23 Python
解决os.path.isdir() 判断文件夹却返回false的问题
Nov 29 Python
python 双循环遍历list 变量判断代码
May 04 Python
Spring @Enable模块驱动原理及使用实例
Jun 23 Python
python 制作python包,封装成可用模块教程
Jul 13 Python
PyCharm+PyQt5+QtDesigner配置详解
Aug 12 Python
详解python中的异常捕获
Dec 15 Python
python 实现图片裁剪小工具
Feb 02 Python
python实现黄金分割法的示例代码
Apr 28 Python
Django显示可视化图表的实践
May 10 Python
python使用scapy模块实现ping扫描的过程详解
Jan 21 #Python
Python 中如何使用 virtualenv 管理虚拟环境
Jan 21 #Python
python使用scapy模块实现ARP扫描的过程
Jan 21 #Python
Python3利用scapy局域网实现自动多线程arp扫描功能
Jan 21 #Python
Pandas直接读取sql脚本的方法
Jan 21 #Python
python asyncio 协程库的使用
Jan 21 #Python
python palywright库基本使用
Jan 21 #Python
You might like
PHP网页游戏学习之Xnova(ogame)源码解读(十四)
2014/06/26 PHP
PHP文件缓存类示例分享
2015/01/30 PHP
PHP json_encode() 函数详解及中文乱码问题
2015/11/05 PHP
PHP+AjaxForm异步带进度条上传文件实例代码
2017/08/14 PHP
Js callBack 返回前一页的js方法
2008/11/30 Javascript
JavaScript 继承详解(一)
2009/07/13 Javascript
网站404页面3秒后跳到首页的实例代码
2013/08/16 Javascript
jQuery实现的输入框选择时间插件用法实例
2015/02/28 Javascript
jQuery scrollFix滚动定位插件
2015/04/01 Javascript
Bootstrap零基础学习第一课之模板
2016/07/18 Javascript
NodeJs的优势和适合开发的程序
2016/08/14 NodeJs
js调用父框架函数与弹窗调用父页面函数的简单方法
2016/11/01 Javascript
在 Typescript 中使用可被复用的 Vue Mixin功能
2018/04/17 Javascript
深入理解Node内建模块和对象
2019/03/12 Javascript
Node.js系列之连接DB的方法(3)
2019/08/30 Javascript
webpack优化之代码分割与公共代码提取详解
2019/11/22 Javascript
[01:00:04]DOTA2上海特级锦标赛B组小组赛#1 Alliance VS Spirit第二局
2016/02/26 DOTA
[01:38:19]夜魇凡尔赛茶话会 第五期
2021/03/11 DOTA
python使用递归解决全排列数字示例
2014/02/11 Python
对于Python装饰器使用的一些建议
2015/06/03 Python
python实现Excel文件转换为TXT文件
2019/04/28 Python
Python3基础教程之递归函数简单示例
2019/06/07 Python
python基于paramiko将文件上传到服务器代码实现
2019/07/08 Python
python中的对数log函数表示及用法
2020/12/09 Python
英国家庭珠宝商:T. H. Baker
2018/02/08 全球购物
一年级家长会邀请函
2014/01/25 职场文书
大四学生找工作的自荐信
2014/03/27 职场文书
大学活动总结范文
2014/04/29 职场文书
1亿有多大教学反思
2014/05/01 职场文书
欢迎领导检查标语
2014/06/27 职场文书
组工干部对照检查材料
2014/08/25 职场文书
2014年机关党委工作总结
2014/12/11 职场文书
五一劳动节慰问信
2015/02/14 职场文书
物业前台接待岗位职责
2015/04/03 职场文书
色戒观后感
2015/06/12 职场文书
k-means & DBSCAN 总结
2021/04/27 Python