Большие файлы качаю из Интернета с помощью wget. Но некоторые сайты позволяют выкачивать файлы только при наличии своих cookies. Для этого у wget есть специальный ключик --load-cookies cookiesfile.txt.
В Firefox 1, 2 был файлик с куками по адресу ~/.mozilla/firefox/что-то/cookies.txt, я просто его указывал и не знал горя. Но с переходом на Firefox 3, этот файлик теперь в формате sqlite. Логичная мысль, которая возникает "Как конвертнуть?".
Нашёл очень простой скрипт на python по этому адресу:
#!/usr/bin/python
import sqlite3 as db
import sys
cookiedb = '/home/USENAME/.mozilla/firefox/PROFIL/cookies.sqlite'
targetfile = '/home/USERNAME/cookies.txt'
what = sys.argv[1]
connection = db.connect(cookiedb)
cursor = connection.cursor()
contents = "host, path, isSecure, expiry, name, value"
cursor.execute("SELECT " +contents+ " FROM moz_cookies WHERE host LIKE '%"
+what+ "%'")
file = open(targetfile, 'w')
index = 0
for row in cursor.fetchall():
file.write("%s\tTRUE\t%s\t%s\t%d\t%s\t%s\n" % (row[0], row[1],
str(bool(row[2])).upper(), row[3], str(row[4]), str(row[5])))
index += 1
print "Gesucht nach: %s" % what
print "Exportiert: %d" % index
file.close()
connection.close() Обозвал его get_cookies.py. Поменял в нем пути к файлам. Дал ему прав для запуска. Запустил скрипт для создания файла с куками, например, для сайта rapidshare.com.
bash$ get_cookies.py repidshare
Получил файл cookies.txt, пригодный для использования в wget.
P.S по рапидшаре есть поиск.
No comments:
Post a Comment