xray 被动_google搜索爬取xray被动扫描
步骤
收集url至url.txt
python google.py
打开xray开始监听
python xray.py
自动化网页链接收集并打开
python scan.py
注意
1.需要安装selenium模块
2.安装chrome浏览器及chromedriver程序
3.chromedriver需要配置环境变量
4.需要添加证书至chrome
5.启动脚本前请删除或转移myscan_report.html以及url_spider.txt
启动
python main.py
运行环境
python3.7
PIP
pip install
selenium
urllib
requests
pyquery
threading
`from selenium import webdriver # 用来驱动浏览器的
from selenium.webdriver.chrome.options import Options
from selenium.common.exceptions import TimeoutException
from selenium.webdriver.support.wait import WebDriverWait
import time
import os
from faker import Factory
import random
检查是否有残留url.txt文件
'''
if os.path.exists('url/url_0.txt'):
os.remove('url/url_0.txt')
else:
print("没有url/url_0.txt文件残留")
'''
pages = int(input("请输入扫描深度(页数):"))
with open('keyword.txt', 'r') as x:
for line in x:
word = line.replace('\n', '')
print("搜索关键词:"+word)
for page in range(0,pages):
print("正在爬取第"+str(page+1)+"页")
page = page*10
随机谷歌域名,防封
domain=random.choice(['www.google.com'
,'www.google.gl'
,'www.google.com.sv'
,'www.google.hn'
,'www.google.co.cr'
,'www.google.com.jm'
,'www.google.ht'
,'www.google.com.pr'
,'www.google.vg'
,'www.google.com.ag'
,'www.google.dm'
,'www.google.com.vc'
,'www.google.tt'
,'www.google.com.ar'
,'www.google.com.br'
,'www.google.com.co'
,'www.google.co.ve'
,'www.google.com.ec'
,'www.google.com.uy'
,'www.google.no'
,'www.google.is'
,'www.google.dk'
,'www.google.lv'
,'www.google.lt'
,'www.google.ru'
,'www.google.pl'
,'www.google.sk'
,'www.google.at'
,'www.google.ie'
,'www.google.nl'
,'www.google.be'
,'www.google.fr'
,'www.google.it'
,'www.google.es'
,'www.google.ro'
,'www.google.gr'
,'www.google.ba'
,'www.google.sm'
,'www.google.com.au'
,'www.google.co.nz'
,'www.google.co.ck'
,'www.google.com.sb'
,'www.google.ws'
,'www.google.as'
,'www.google.to'
,'www.google.co.il'
,'www.google.com.sa'
,'www.google.com.eg'
,'www.google.ae'
,'www.google.com.bh'
,'www.google.jo'
,'www.google.com.ly'
,'www.google.co.ma'
,'www.google.com.et'
,'www.google.mu'
,'www.google.ci'
,'www.google.dj'
,'www.google.cd'
,'www.google.cg'
,'www.google.gm'
,'www.google.co.ke'
,'www.google.com.gi'
,'www.google.co.bw'
,'www.google.co.zm'
,'www.google.com.na'
,'www.google.co.ls'
,'www.google.sh'
,'www.google.mw'
#,'www.google.cn'
,'www.google.co.kr'
,'www.google.mn'
,'www.google.co.jp'
,'www.google.com.hk'
,'www.google.com.tw'
,'www.google.com.vn'
,'www.google.com.my'
,'www.google.co.id'
,'www.google.com.pk'
,'www.google.com.bd'
,'www.google.com.np'
,'www.google.az'
,'www.google.am'
,'www.google.tm'
,'www.google.co.uz'
,'www.google.kg'
,'www.google.com.tj'])
print('使用谷歌域名:'+domain)
url = 'https://www.google.com.hk/search?q='+word+'&hl=zh&start='+str(page)+'&safe=images'#英文en中文zh
#url = 'https://'+domain+'/search?q='+word+'&hl=zh&start='+str(page)+'&safe=images'#英文en中文zh
#chromedriver打开指定url
option=Options()
option.add_argument("--headless")#没有窗口
option.add_argument('–disable-javascript')
#option.add_argument('--window-size=300,200')
option.add_argument('--blink-settings=imagesEnabled=false')#不显示图片
#使用随机ua,不然封ip需要人机验证
f = Factory.create()
ua = f.user_agent()
print('使用UA:'+ua)
option.add_argument('--user-agent="'+ua+'"')
driver =webdriver.Chrome(options=option)
driver.get(url)
#标签分类
nodelist = driver.find_elements_by_xpath("//a")
for url in nodelist:
url1=str(url.get_attribute("href"))
if url1!='None' and url1[0:18]!='https://www.google' and url1[0:15]!='https://support' and url1[0:20]!='https://accounts.goo' and url1[0:19]!='https://maps.google' and url1[0:20]!='https://translate.go' and url1[0:23]!='https://policies.google' and url1[0:23]!='https://webcache.google'and url1[0:22]!='http://webcache.google'and url1[8:21]!=domain[0:13]:
print(url1)
fp=open("url/url_0.txt","a+",encoding="utf-8")
fp.write(url1+'\n')
fp.close()
driver.quit()
#time.sleep(random.randint(5,10))
print("\n\n\n\n--------------------\n------收集完成------\n--------------------\n")
def spider(url,num):
option=Options()
option.add_argument("--headless")#没有窗口
option.add_argument('–disable-javascript')
option.add_argument('--window-size=300,200')
option.add_argument('–no-sandbox')
#option.add_argument('--blink-settings=imagesEnabled=false')#不显示图片
option.add_argument('--proxy-server=http://127.0.0.1:23333')
#使用随机ua,不然封ip需要人机验证
f = Factory.create()
ua = f.user_agent()
print('使用UA:'+ua)
option.add_argument('--user-agent="'+ua+'"')
driver =webdriver.Chrome(options=option)
driver.get(url)
#标签分类
nodelist = driver.find_elements_by_tag_name('a') + driver.find_elements_by_tag_name('script') + driver.find_elements_by_tag_name('img') + driver.find_elements_by_tag_name('link') + driver.find_elements_by_tag_name('iframe')
for url in nodelist:
print(url)
if url.get_attribute("src"):
url1 = url.get_attribute("src")
if str(url1)[0:4]=='http':
print(str(url1))
file = 'url/url_'+str(num)+'.txt'
fp=open(file,"a+",encoding="utf-8")
fp.write(url1+'\n')
fp.close()
if url.get_attribute("href"):
url2 = url.get_attribute("href")
if str(url2)[0:4]=='http':
print(str(url2))
file = 'url/url_'+str(num)+'.txt'
fp=open(file,"a+",encoding="utf-8")
fp.write(str(url2)+'\n')
fp.close()
driver.quit()
number = int(input("请输入扫描迭代次数:"))
num = 1
while num <= number:
txt = 'url/url_'+str(num-1)+'.txt'
print(txt)
with open(txt, 'r') as x:
for line in x:
if line and line[0:4]=='http':
print(line)
spider(line,num)
time.sleep(10)
num = num+1`
xray 被动_google搜索爬取xray被动扫描相关推荐
- Python爬虫练习(一) 爬取新笔趣阁小说(搜索+爬取)
爬取笔趣阁小说(搜索+爬取) 首先看看最终效果(gif): 实现步骤: 1.探查网站"http://www.xbiquge.la/",看看网站的实现原理. 2.编写搜索功能(获取每 ...
- 知网关键词搜索爬取摘要信息
知网关键词搜索爬取摘要信息 由于技术不成熟,代码冗余度较高.同时代码也可能会存在错误,也请各路高人指正. 本篇文章应用范围为期刊搜索(不包括外文文献),其他内容,没有进行测试!!! 本次爬虫所采用到的 ...
- python微博根据用户名搜索爬取该用户userId
根据微博用户名搜索爬取该用户userId并返回 import urllib.request from urllib import parsefrom bs4 import BeautifulSoup# ...
- python爬取微博用户关注_Paython微博根据用户名搜索爬取该用户userId
根据微博用户名搜索爬取该用户userId并返回 import urllib.request from urllib import parse from bs4 import BeautifulSoup ...
- Python搜索爬取淘宝商品信息并存储为csv文件(名称、店铺、销量、地址等)
功能是搜索商品,并把搜到的商品信息一一爬取(多个页面): 爬取商品名称.店铺名称.销量.评论数量.地址等等,然后把信息存储为csv文件- 效果: 首先是程序运行 运行完后可以看到目录下出现了一个csv ...
- 爬取笔趣阁小说,并可以搜索爬取你喜欢的小说
搜索进行爬取你自己喜欢的小说 我是一个小说爱好者,喜欢看小说,这也是我学习爬虫其中的一个原因. 我喜欢看网络小说,经常需要从网上下载小说.有的还不好找,有的下载不了,如果是正在更新的小说来说,就很难下 ...
- 极客搜索爬取request payload构建post请求
这次要爬取的网站是极客搜索 首先我们打开这个网站 https://s.geekbang.org/ 可以看到网站首页如下图 我们输入关键词算法 会看到链接跳转https://s.geekbang.org ...
- 基于selenium模拟浏览器爬虫JS-frame,搜索+爬取详情页+翻页
基于selenium模拟浏览器爬虫JS-frame网站 课设中需要爬一个很神奇的网站Web Gallery,一开始看结构以为是很简单的那种,开始爬的时候才发现它的结构之奇葩--所有东西都集成在一个ht ...
- python自动搜索爬取下载文件-python批量爬取下载抖音视频
本文实例为大家分享了python批量爬取下载抖音视频的具体代码,供大家参考,具体内容如下 import os import requests import re import sys import a ...
最新文章
- legend位置 pyecharts_实验|pyecharts数据可视化分析-1
- java笔记之抽象类和接口
- 假如,绿茶婊的目标变成女生......
- 超252万市民预约报名 北京数字人民币红包中签结果公布啦
- 基于OEA框架的客户化设计(一) 总体设计
- idea 导入spring 源码 踩坑记总结整理
- 打开unity卡在loading白屏界面
- TabLayout+Viewpage滑动
- 盘点.确保物联网设备顺利运行的9项测试
- 连续型随机变量单点概率为0以及不可能事件
- OpenCV:旋转矩形(RotatedRect)
- mysql能够跨平台使用吗_Mysql跨平台(Windows,Linux,Mac)使用与安装
- ISCC 2021 SSTI
- PAT1009 说反话 (20分)
- 力扣 656.金币路径
- 玩转Mixly – 10、Arduino AVR编程 之 传感器,执行器,通信,存储,factory
- C++笔试试题讲解(~~~可能是全站唯独一份有解析的~~~)
- Qt入门教程【对话框】QInputDialog输入对话框
- 山东大学计算机组成与设计实验六 二进制补码加法器实验
- bootstrap 大坑,大坑