python webview_python webkit webview还记得饼干?

I have written a short python script that opens Google music in web view window. however I can't seem to find anything about getting webkit to use cookies so that I don't have to login every time I start it up.

Here's what I have:

#!/usr/bin/env python

import gtk, webkit

import ctypes

libgobject = ctypes.CDLL('/usr/lib/i386-linux-gnu/libgobject-2.0.so.0')

libwebkit = ctypes.CDLL('/usr/lib/libsoup-2.4.so.1')

libsoup = ctypes.CDLL('/usr/lib/libsoup-2.4.so.1')

libwebkit = ctypes.CDLL('/usr/lib/libwebkitgtk-1.0.so.0')

proxy_uri = libsoup.soup_uri_new('http://tcdproxy.tcd.ie:8080') #proxy urli

session = libwebkit.webkit_get_default_session()

libgobject.g_object_set(session, "proxy-uri", proxy_uri, None)

w = gtk.Window()

w.connect("destroy",w.destroy)

w.set_size_request(1000,600)

w.connect('delete-event', lambda w, event: gtk.main_quit())

s = gtk.ScrolledWindow()

v = webkit.WebView()

s.add(v)

w.add(s)

w.show_all()

v.open('http://music.google.com')

gtk.main()

Any help on this would be greatly appreciated,

thanks,

Richard

解决方案

Worked it out, but it required learning more ctypes than I wanted -_-. Try this- I required different library paths, etc than you, so I'll just paste what's relevant.

#remove all cookiejars

generic_cookiejar_type = libgobject.g_type_from_name('SoupCookieJar')

libsoup.soup_session_remove_feature_by_type(session, generic_cookiejar_type)

#and replace with a new persistent jar

cookiejar = libsoup.soup_cookie_jar_text_new('/path/to/your/cookies.txt',False)

libsoup.soup_session_add_feature(session, cookiejar)

The code's pretty self explanatory. There's also a SoupCookieJarSqlite that you might prefer, though I'm sure the text file would be easier for development.

EDIT: actually, the cookie jar removal doesn't seem to be doing anything, so the appropriate snippet is

#add a new persistent cookie jar

cookiejar = libsoup.soup_cookie_jar_text_new('/path/to/your/cookies.txt',False)

libsoup.soup_session_add_feature(session, cookiejar)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值