Requests: Simpan dan muat sesi

Dibuat pada 2 Apr 2015  ·  3Komentar  ·  Sumber: psf/requests

Saya ingin dapat menyimpan dan memuat sesi ke disk. Saya pikir ini berarti hanya menyimpan dan memuat cookie, tetapi mungkin ada nuansa lain yang perlu disertakan.

Saya tertarik menggunakan Robobrowser (https://github.com/jmcarp/robobrowser) yang membungkus permintaan. Saya ingin dapat mempertahankan browser di antara menjalankan aplikasi saya, yang berarti dapat menyimpan dan memuat sesi ke disk.

Ada posting SO tentang cara melakukan ini. Saya pikir dengan jelas, jawaban yang paling populer adalah salah.
http://stackoverflow.com/questions/13030095/how-to-save-requests-python-cookies-to-a-file

Terima kasih,
Jim

Komentar yang paling membantu

Hal termudah untuk dilakukan adalah dengan mengasinkan seluruh objek session :

import requests, requests.utils, pickle
session = requests.session()
# Make some calls
with open('somefile', 'w') as f:
    pickle.dump(session, f)
with open('somefile') as f:
    session = pickle.load(f)

Semua 3 komentar

Hal termudah untuk dilakukan adalah dengan mengasinkan seluruh objek session :

import requests, requests.utils, pickle
session = requests.session()
# Make some calls
with open('somefile', 'w') as f:
    pickle.dump(session, f)
with open('somefile') as f:
    session = pickle.load(f)

Sebagai tambahan: sepertinya Python3 mengharapkan tanda 'b' saat menulis dan membaca:

with open('somefile', 'wb') as f:
    pickle.dump(session, f)
with open('somefile', 'rb') as f:
    session = pickle.load(f)

Saya mencoba menggunakan pendekatan ini, namun saya tidak dapat memulai kembali sesi TLS setelah memuat ulang sesi acar. Adakah yang tahu bagaimana mencapai perilaku ini?

Apakah halaman ini membantu?
0 / 5 - 0 peringkat