TorCrawl:通过 TOR 网络抓取并提取(常规或洋葱)网页
TorCrawl.py 是一个 Python 脚本,旨在通过 Tor 网络进行匿名网页抓取。
它结合了易用性和 Tor 强大的隐私功能,可以实现安全且不可追踪的数据收集。这款工具非常适合新手和经验丰富的程序员,对于数字时代负责任的数据收集至关重要。
是什么让它变得简单且易于使用?
如果你是一个终端狂人,你就会知道事情必须简单明了。将输出传递到其他工具是必要的,准确性是关键。
只需一个参数,您就可以通过 TOR 网络读取 .onion 网页或常规网页,并且通过使用管道,您可以将输出传递到您喜欢的任何其他工具。
$ torcrawl -u http://www.github.com/ | grep 'google-analytics' <meta-name="google-analytics" content="UA-XXXXXX- ">
如果您想抓取网页的链接,请使用 BAM-c
并 在文件上获取所有内部链接。您甚至可以使用 它们来抓取它们等等。您还可以使用参数 在下一次抓取之前等待几秒钟。-d``-p
$ torcrawl -v -u http://www.github.com/ -c -d 2 -p 2 \# TOR 已准备就绪! \# URL:http://www.github.com/ \# 您的 IP:XXX.XXX.XXX.XXX \# 爬虫程序从 http://www.github.com/ 开始,深度爬取 2 次,延迟 2 秒: \# 步骤 1 完成,结果为:11 个 \# 步骤 2 完成,结果为:112 个 \# 文件创建于 /path/to/project/links.txt
提示
抓取并不违法,但侵犯版权 是违法的。在开始抓取网站之前,最好仔细检查网站的条款和条件。有些网站设置了所谓的“ robots.txt
阻止抓取工具访问这些页面”的规则。
此抓取工具 可 让您绕过此规则,但我们始终 建议 尊重 robots.txt。
安装
使用 pip 轻松安装:
即将推出..
手动安装:
克隆此存储库:
git clone https://github.com/MikeMeliz/TorCrawl.py.git
安装依赖项:
pip install -r requirements.txt
安装并启动 TOR 服务
:
参数
命令 | 长命令 | 描述 |
---|---|---|
一般的: | ||
-h | –help | 帮助信息 |
-v | –verbose | 显示更多有关进度的信息 |
-u | –url *.onion | 要抓取或提取的网页 URL |
-w | –without | 不使用 TOR 网络 |
-f | –folder | 包含生成文件的目录 |
提取: | ||
-e | –extract | 将页面代码提取到终端或文件(默认:终端) |
-i | –input filename | 输入文件及 URL(以行分隔) |
-o | –output [filename] | 将页面输出至文件(一页) |
-y | –yara | 执行 yara 关键字搜索: h = 搜索整个 html 对象, t = 仅搜索文本 |
抓取: | ||
-c | –crawl | 抓取网站 (默认输出在 website/links.txt) |
-d | –cdepth | 设置爬行器行进的深度(默认值:1) |
-p | –pause | 请求之间的暂停秒数(默认值:0) |
-l | –log | 包含访问过的 URL 及其响应代码的日志文件 |
用法和示例
作为提取器:
只需将单个网页提取到终端:
$ python torcrawl.py -u http://www.github.com
无需使用 TOR 即可提取到文件(github.htm):
$ python torcrawl.py -w -u http://www.github.com -o github.htm
## 在 /script/path/github.htm 创建文件
解压到终端,只找到包含 google-analytics 的行:
$ python torcrawl.py -u http://www.github.com | grep 'google-analytics'
<meta name="google-analytics" content="UA-*******-*">
提取到文件并使用 yara 仅找到包含 google-analytics 的行:
$ python torcrawl.py -v -w -u https://github.com -e -y 0
…
*注意:* 更新 res/keyword.yar 以搜索其他关键字。 -y 0
用于原始 html 搜索和 -y 1
文本搜索。
提取一组网页(从文件导入)到终端:
$ python torcrawl.py -i links.txt
…
作为爬虫:
无需使用 TOR 即可抓取网页链接,并显示详细输出(非常有用):
$ python torcrawl.py -v -w -u http://www.github.com/ -c
## URL: http://www.github.com/
## 您的 IP: ...
## 爬虫程序从 http://www.github.com/ 开始执行步骤 1 并等待 0
## 步骤 1 完成,结果为:11
## 文件创建于 /script/path/links.txt
以深度 2(2 次点击)爬取网页,并等待 5 秒再爬取下一页:
$ python torcrawl.py -v -u http://www.github.com/ -c -d 2 -p 5
## TOR 已准备就绪!
## URL:http://www.github.com/
## 您的 IP:*...*
## 爬虫程序从 http://www.github.com 开始执行第 2 步并等待 5
## 第 1 步完成,得到 11 个结果
## 第 2 步完成,得到 112 个结果
## 文件已在 /script/path/links.txt 上创建
作为两者:
您可以使用单个命令抓取页面并将网页提取到文件夹中:
$ python torcrawl.py -v -u http://www.github.com/ -c -d 2 -p 5 -e
## TOR 已准备就绪!
## URL:http://www.github.com/
## 您的 IP:*...*
## 爬虫程序从 http://www.github.com 开始执行步骤 1,等待 5
## 步骤 1 完成,结果为:11
## 文件创建于 /script/path/FolderName/index.htm
## 文件创建于 /script/path/FolderName/projects.html
## …
注意: 爬虫链接的默认(目前唯一)文件是 links.txt
文档。此外,要在爬取后立即提取,您必须提供 -e
参数
遵循相同的逻辑;您可以将所有这些页面解析为 grep(例如)并搜索特定文本:
$ python torcrawl.py -u http://www.github.com/ -c -e | grep '</html>'
两者 + 关键字搜索:
您可以使用单个命令抓取页面、执行关键字搜索并将与结果匹配的网页提取到文件夹中:
$ python torcrawl.py -v -u http://www.github.com/ -c -d 2 -p 5 -e -yh
## TOR 已准备就绪!
## URL:http://www.github.com/
## 您的 IP:*...*
## 爬虫程序从 http://www.github.com 开始执行步骤 1,等待 5
## 步骤 1 完成,结果为:11
## 文件创建于 /script/path/FolderName/index.htm
## 文件创建于 /script/path/FolderName/projects.html
## …
注意: 更新 res/keyword.yar 以搜索其他关键字。 仅-y h
用于原始 html 搜索和 -y t
文本搜索。