python 多进程批量扫描网站备份文件

2 篇文章 0 订阅
2 篇文章 0 订阅

用python写了一个多进程批量扫描网站备份文件的小脚本
先把要扫描的url放到文件里,通过读取文件里面的url,批量扫描备份文件
这里利用了多进程模块,速度非常可观

import requests
import re
import multiprocessing

list = ['wwwroot.rar','wwwroot.zip','新建文件夹.rar','新建文件夹.zip','www.rar','www.zip','web.rar','web.zip']
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:83.0) Gecko/20100101 Firefox/83.0'}

content_type = ['application/x-rar','application/x-gzip','application/zip','application/octet-stream','application/x-7z-compressed']

def main(i):
	url1 = i.strip('\n')
	c = re.findall(r'https?://(?:[-\w.]|(?:%[\da-fA-F]{6}))+',url1)
	url2 = (',').join(str(x) for x in c) 
	for i in list:
		try:
			b = url2 +'/'+ i
			r = requests.head(url = b ,headers = headers)
			if r.headers['Content-Type'] in content_type:
				with open (r'存放存在的网站的路径','a', encoding ='utf-8' ) as f:
					a = f.write('存在备份文件'+ ':' + b + '\n')
			else:
				print('不存在'+b)
		except:
			print('无法连接')

if __name__ == '__main__':
	p = multiprocessing.Pool(50)#线程数
	with open(r'读取url路径','r',encoding = 'utf-8') as f:
		a = f.readlines()
		for i in a:
			p.apply_async(main,(i,))
	p.close()
	p.join()
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值