本章为大家分享,使用Selenium写入Cookies实现FOFA免密登录
需要提前登陆获取cookies文件
from selenium import webdriver
import ast
class write_cookies:
def __init__(self):
self.driver = webdriver.Chrome()
self.url = "https://fofa.so/"
def r_cookie(self):
# 访问fofa官网
self.driver.get(self.url)
# 访问会生成Cookies,所以需要先清空Cookies
self.driver.delete_all_cookies()
# 打开保存好的Cookies文件
try:
f = open('fofa_cookies', 'r')
except:
print("fofa_cookies文件不存在,请先生成cookies文件")
# 遍历Cookies文件内容,写入Cookies
while True:
# 获取文本中的一行内容
text = f.readline()
# 没获取到内容则跳出循环
if not text:
break
# 将字符串转化成字典
text = ast.literal_eval(text)
try:
# 写入cookies时,遇到expiry字段会报错,所以先移除expiry键值对
text.pop('expiry')
except:
# 没expiry键值对就继续
print('', end='')
# 将从文本读取的一行内容处理完成后,开始写入Cookies
self.driver.add_cookie(text)
f.close()
print("成功写入Cookies")
self.driver.refresh()
a = write_cookies()
a.r_cookie()
生成cookies文件请参考:Python Selenium模拟登录和读取/写入Cookies