Как загрузить каждый файл cookie в папку с маринадом или чем-то еще?
В моей папке cookies есть много файлов cookies1.txt, cookies2.txt, ... и ниже мой скрипт, я пытался использовать его для входа в 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'
1 ответ
Решение
Чтобы открыть (), вам необходимо указать полный путь к файлу cookie.
В противном случае вы просто проверяете текущую рабочую директорию, в которой, очевидно, нет этого файла, поскольку она находится в папке cookies.
Я думаю, что следующий фрагмент кода должен помочь прояснить ситуацию:
full_path = os.path.join(os.getcwd(), "cookies", f)
cookies = pickle.load(open(full_path , "rb"))