编程语言
首页 > 编程语言> > python-自动生成Tor出口节点列表

python-自动生成Tor出口节点列表

作者:互联网

我想自动生成可以到达某个IP地址的Tor出口节点的列表.我上网搜索了一会儿,发现这段代码来自http://sjoerd-hemminga.com/blog/2012/10/block-tor-exit-nodes-using-iptables/

if [[ -z "$1" ]]; then
  echo Usage: $0 "<your host's ip>"
  exit 1
fi

hostip=$1

for i in $(wget https://check.torproject.org/cgi-bin/TorBulkExitList.py\?ip=$hostip -O- -q |\
    grep -E '^[[:digit:]]+(\.[[:digit:]]+){3}$'); do
  sudo iptables -A INPUT -s "$i" -j DROP
done

有人可以帮我更好地理解此代码,因为每次我尝试运行它时,都会产生错误.

欢迎任何替代答案,但是如果它们使用Python,我希望能找到.

解决方法:

import os
import re
import sys
import urllib

if len(sys.argv) != 2:
    print "Usage {} <your host's ip>".format(sys.argv[0])
    sys.exit(1)

hostip = sys.argv[1]

u = urllib.urlopen('https://check.torproject.org/cgi-bin/TorBulkExitList.py?ip=' + hostip)
for ip in u:
    ip = ip.strip()
    if re.match('\d+(\.\d+){3}$', ip):
        #print ip
        os.system('sudo iptables -A INPUT -s "{}" -j DROP'.format(ip))
u.close()

标签:tor,python
来源: https://codeday.me/bug/20191123/2065724.html