Python 从.txt文件发送post请求
我是Python新手,正在寻求帮助:) 我创建了一个简单的脚本,它在IPVoid中检查IP信誉(来自lists.txt):Python 从.txt文件发送post请求,python,python-3.x,python-requests,Python,Python 3.x,Python Requests,我是Python新手,正在寻求帮助:) 我创建了一个简单的脚本,它在IPVoid中检查IP信誉(来自lists.txt): import requests import re URL = "https://www.ipvoid.com/ip-blacklist-check/" ip = open('lists.txt') DATA = {"ip":ip} r = requests.post(url = URL, data = {"ip&quo
import requests
import re
URL = "https://www.ipvoid.com/ip-blacklist-check/"
ip = open('lists.txt')
DATA = {"ip":ip}
r = requests.post(url = URL, data = {"ip":ip})
text = r.text
bad_ones= re.findall(r'<i class="fa fa-minus-circle text-danger" aria-hidden="true"></i> (.+?)</td>', text)
print(bad_ones)
导入请求
进口稀土
URL=”https://www.ipvoid.com/ip-blacklist-check/"
ip=打开('lists.txt')
数据={“ip”:ip}
r=requests.post(url=url,data={“ip”:ip})
text=r.text
坏的=关于findall(r'(.+?)',文本)
打印(坏的)
lists.txt包含IP的列表:
- 8.8.8.8
- 4.4.4.4
请注意:)不清楚txt文件中的ip地址是否逐行组织,但我假设是这样 您可以执行以下操作
导入请求
进口稀土
URL=”https://www.ipvoid.com/ip-blacklist-check/"
坏的=[]
将open('lists.txt')作为f:
对于f.readlines()中的ip:
r=requests.post(url=url,data={“ip”:ip.strip()})
text=r.text
错误的附加(关于findall(r'(.+?)',text))
打印(坏的)
用open('lists.txt')作为f的语句
打开文件并将生成的io对象命名为f,当到达“with”块的末尾时,文件将关闭,而无需显式调用f.close()
现在对于批处理模式,它是文本文件每一行上的一个简单循环,通过在每个ip
字符串(文本文件的行)上调用strip()
,使用一个简单的过滤器来去除换行符。我甚至不确定上述程序是否有效。。程序中的ip
变量基本上是一个io对象
您需要的是一个for循环来发送每个IP的请求
如果API接受,则可以执行批量检查
import requests
import re
URL = "https://www.ipvoid.com/ip-blacklist-check/"
ips = open('lists.txt')
for ip in ips.readlines():
DATA = {"ip":ip}
r = requests.post(url = URL, data = {"ip":ip})
text = r.text
'''Your processing goes here..'''
还可以探索使用with
子句打开和关闭文件。这就是我的例外:)现在我知道该怎么做了,谢谢!