如何将每个 cookie 文件加载到带有 pickle 或其他东西的文件夹中?

How to load each cookie file in a folder with pickle or something?

在我的 cookies 文件夹中,有很多文件 cookies1.txt,cookies2.txt,...下面是我的脚本,我试图用它来使用 cookies 登录 facebook,每个 cookie文件,它将加载并执行一个操作,然后完成并执行下一个加载文件。当我只将一个 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'

您需要向 open() 提供的是您的 cookie 文件的完整路径。

否则你只是检查当前工作目录,显然没有这个文件,因为它在 cookies 文件夹中。

我认为以下代码片段应该有助于澄清问题:

full_path = os.path.join(os.getcwd(), "cookies", f)
cookies = pickle.load(open(full_path , "rb"))