在我的Cookies文件夹中,有很多文件cookies1.txt,cookies2.txt,...,下面是我的脚本,我试图用它来登录带有Cookie的Facebook,每个加载并执行的Cookie文件然后执行一个操作并执行下一个加载文件。当我只将cookie文件放在文件夹中,但是当我将两个或两个以上放在文件夹中时,它会显示错误。
import os
import pickle
import selenium.webdriver
import time
driver = selenium.webdriver.Firefox()
files = os.listdir("cookies")
driver.get("http://www.facebook.com")
for f in files:
cookies = pickle.load(open(f, "rb"))
for cookie in cookies:
driver.add_cookie(cookie)
driver.refresh()
错误:
Traceback (most recent call last):
File "C:/Users/tuong cat/AppData/Local/Programs/Python/Python37-32/Lib/site-packages/new.py", line 10, in <module>
cookies = pickle.load(open(f, "rb"))
FileNotFoundError: [Errno 2] No such file or directory: 'cookies2.txt'
答案 0 :(得分:1)
您需要提供给open()的是cookie文件的完整路径。
否则,您只是在当前工作目录中签入,因为该目录显然在cookie目录中,因此该文件中显然没有该文件。
我认为以下代码段应有助于澄清问题:
full_path = os.path.join(os.getcwd(), "cookies", f)
cookies = pickle.load(open(full_path , "rb"))