سؤال

وأنا أتعلم كيفية استخدام يمكنن أو وحدة نمطية بيثون لأتمتة التفاعل مع المواقع.

وميزة واحدة هي التعامل الآلي الكوكيز. وأود أن تريد تفريغ الكوكيز من مثيل mechanize.Browser لأغراض التصحيح، ولكن أنا لا يمكن أن يبدو لهذا الرقم نفسي.

هل كانت مفيدة؟

المحلول


>>> from mechanize import Browser
>>> b = Browser()
>>> b._ua_handlers['_cookies'].cookiejar
mechanize._clientcookie.CookieJar[]
>>> b.open('http://google.com')
response_seek_wrapper at 0xb7a922ccL whose wrapped object = closeable_response at 0xb7aa070cL whose fp = socket._fileobject object at 0xb7a94224
>>>
>>> b._ua_handlers['_cookies'].cookiejar
mechanize._clientcookie.CookieJar[Cookie(version=0, name='PREF', value='ID=57d545c229b4cf3f:TM=1236081634:LM=1236081634:S=p001WJMOr-V8Rlvi', port=None, port_specified=False, domain='.google.com', domain_specified=True, domain_initial_dot=True, path='/', path_specified=True, secure=False, expires=1299153634, discard=False, comment=None, comment_url=None, rest={}, rfc2109=False), Cookie(version=0, name='PREF', value='ID=20534d80a5ccf2ea:TM=1236081635:LM=1236081635:S=jW3UotZ0dg8sv6mf', port=None, port_specified=False, domain='.google.com.ua', domain_specified=True, domain_initial_dot=True, path='/', path_specified=True, secure=False, expires=1299153635, discard=False, comment=None, comment_url=None, rest={}, rfc2109=False)]
>>>                           

نصائح أخرى

وفقط طباعة CookieJar مثيل

# Browser
br = mechanize.Browser()

# Cookie Jar
cj = cookielib.LWPCookieJar()
br.set_cookiejar(cj)

# Dump
print cj

والجواب ميكولاس "أعطاني تقريبا ما كنت تبحث عنه. كنت أبحث عن كيفية حفظ ملفات تعريف الارتباط إلى ملف. وبما أن هذا الجواب يعطي هامش الإغراق لملفات تعريف الارتباط في ملف، ربما أنها سوف تكون مفيدة للآخرين يأتون إلى هنا تبحث عن ذلك. لحفظ ملفات تعريف الارتباط إلى ملف:

br._ua_handlers['_cookies'].cookiejar.save("cookie.txt", ignore_discard=True, ignore_expires=True)
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top