資源簡介
(1)這個(gè)demo使用.NET4.0框架,C#語言編寫的Winform程序,使用GeckoFX 33.0.9版本火狐瀏覽器內(nèi)核,在winform中創(chuàng)建瀏覽器,并在XpcomHelper.cs中集成了讀取Cookie,刪除Cookie,刪除歷史記錄的方法。
(2)此demo中讀取的是新浪微博網(wǎng)站登錄cookie,如果要讀取其他網(wǎng)站cookie,請自行修改ReadCookie方法。
(3)cookie讀取原理簡單介紹:火狐是使用sqlite數(shù)據(jù)庫存儲cookie的,都在cookies.sqlite中了。不明白的請自行百度sqlite數(shù)據(jù)。
代碼片段和文件信息
using?System;
using?System.IO;
using?System.Windows.Forms;
using?Gecko;
using?微博Cookie.Common;
using?微博Cookie.Handler;
namespace?微博Cookie
{
????public?partial?class?MainForm?:?Form
????{
????????private?GeckoWebBrowser?Browser;
????????public?MainForm()
????????{
????????????InitializeComponent();
????????????Control.CheckForIllegalCrossThreadCalls?=?false;
????????????initFireFox();
????????????string?dbPath?=?Path.Combine(Environment.CurrentDirectory?“Cookies“?“cookies.sqlite“);//cookie目錄
????????????if?(File.Exists(dbPath))
????????????{
????????????????DbHelperSQLite.connectionString?=?string.Format(“Data?Source={0};“?dbPath);
????????????}
????????????else
????????????{
????????????????MessageBox.Show(“請?jiān)跒g覽器加載完成后重啟軟件“);
????????????}
????????}
????????private?void?MainForm_Load(object?sender?EventArgs?e)
????????{
????????}
????????private?void?MainForm_FormClosing(object?sender?FormClosingEventArgs?e)
????????{
????????????Environment.Exit(0);
????????}
????????///?
????????///?瀏覽器初始化
????????///?
????????private?void?initFireFox()
????????{
????????????var?app_dir?=?Environment.CurrentDirectory;//程序目錄
????????????string?directory?=?Path.Combine(app_dir?“Cookies“);//cookie目錄
????????????if?(!Directory.Exists(directory))
????????????????Directory.CreateDirectory(directory);//檢測目錄是否存在
????????????Gecko.Xpcom.ProfileDirectory?=?directory;//綁定cookie目錄
????????????Xpcom.Initialize(Application.StartupPath?+?“/xulrunner“);
????????????GeckoPreferences.Default[“extensions.blocklist.enabled“]?=?true;
????????????GeckoPreferences.User[“gfx.font_rendering.graphite.enabled“]?=?true;//設(shè)置偏好:字體
????????????GeckoPreferences.User[“privacy.donottrackheader.enabled“]?=?true;//設(shè)置瀏覽器不被追蹤
????????????GeckoPreferences.User[“intl.accept_languages“]?=?“zh-CNzh;q=0.9en;q=0.8“;//不設(shè)置的話默認(rèn)是英文區(qū)
????????????GeckoPreferences.User[“devtools.debugger.remote-enabled“]?=?true;
????????????XpcomHepler.RemoveCookie();//清空cookie
????????????Browser?=?new?GeckoWebBrowser();
????????????Browser.Parent?=?p2;
????????????Browser.Dock?=?Dockstyle.Fill;
????????????Browser.Navigate(“https://passport.weibo.cn/signin/login?entry=mweibo&res=wel“);
????????}
??????
????????private?void?toolStripButton2_Click(object?sender?EventArgs?e)
????????{
????????????string?cookie?=?XpcomHepler.ReadCookie();
????????????if?(string.IsNullOrEmpty(cookie))
????????????{
????????????????MessageBox.Show(“請先登錄微博在讀取cookie“);
????????????}
????????????else
????????????{
????????????????MessageBox.Show(cookie?“這是你要的Cookie字符串,請自行調(diào)試使用“);
????????????}
????????}
????????private?void?toolStripButton1_Click(object?sender?EventArgs?e)
????????{
????????????XpcomHepler.RemoveCookie();
????????}
????????private?void?toolStripButton3_Click(object?sender?EventArgs?e)
????????{
????????????XpcomHepler.RemoveHistory();
????????}
????}
}
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件????????969??2019-05-30?16:44??新浪微博Cookie讀取-Demo\10?微博抓取.sln
????..A..H.?????33280??2019-05-30?14:16??新浪微博Cookie讀取-Demo\10?微博抓取.suo
????..A..H.?????74240??2019-05-30?16:46??新浪微博Cookie讀取-Demo\10?微博抓取.v12.suo
?????文件????????209??2019-05-30?16:44??新浪微博Cookie讀取-Demo\packages\Entityfr
?????文件????????209??2019-05-30?16:44??新浪微博Cookie讀取-Demo\packages\Entityfr
?????文件????4293231??2019-05-30?16:44??新浪微博Cookie讀取-Demo\packages\Entityfr
?????文件???????1098??2019-05-30?16:44??新浪微博Cookie讀取-Demo\packages\Entityfr
?????文件????5003984??2019-05-30?16:44??新浪微博Cookie讀取-Demo\packages\Entityfr
?????文件?????616656??2019-05-30?16:44??新浪微博Cookie讀取-Demo\packages\Entityfr
?????文件?????148963??2019-05-30?16:44??新浪微博Cookie讀取-Demo\packages\Entityfr
?????文件????3256661??2019-05-30?16:44??新浪微博Cookie讀取-Demo\packages\Entityfr
?????文件????5225168??2019-05-30?16:44??新浪微博Cookie讀取-Demo\packages\Entityfr
?????文件?????622288??2019-05-30?16:44??新浪微博Cookie讀取-Demo\packages\Entityfr
?????文件?????158388??2019-05-30?16:44??新浪微博Cookie讀取-Demo\packages\Entityfr
?????文件????3680079??2019-05-30?16:44??新浪微博Cookie讀取-Demo\packages\Entityfr
?????文件???????1970??2019-05-30?16:44??新浪微博Cookie讀取-Demo\packages\Entityfr
?????文件??????50384??2019-05-30?16:44??新浪微博Cookie讀取-Demo\packages\Entityfr
?????文件??????13520??2019-05-30?16:44??新浪微博Cookie讀取-Demo\packages\Entityfr
?????文件??????24836??2019-05-30?16:44??新浪微博Cookie讀取-Demo\packages\Entityfr
?????文件??????44793??2019-05-30?16:44??新浪微博Cookie讀取-Demo\packages\Entityfr
?????文件??????10028??2019-05-30?16:44??新浪微博Cookie讀取-Demo\packages\Entityfr
?????文件??????10141??2019-05-30?16:44??新浪微博Cookie讀取-Demo\packages\Entityfr
?????文件?????542928??2019-05-30?16:44??新浪微博Cookie讀取-Demo\packages\Entityfr
?????文件????????131??2019-05-30?16:39??新浪微博Cookie讀取-Demo\packages\repositories.config
?????文件??????11774??2019-05-30?16:39??新浪微博Cookie讀取-Demo\packages\System.Data.SQLite.1.0.110.0\System.Data.SQLite.1.0.110.0.nupkg
?????文件???????2453??2019-05-30?16:39??新浪微博Cookie讀取-Demo\packages\System.Data.SQLite.1.0.110.0\System.Data.SQLite.1.0.110.0.nuspec
?????文件???????5857??2019-05-30?16:39??新浪微博Cookie讀取-Demo\packages\System.Data.SQLite.Core.1.0.110.0\build\net20\System.Data.SQLite.Core.targets
?????文件????1643008??2019-05-30?16:39??新浪微博Cookie讀取-Demo\packages\System.Data.SQLite.Core.1.0.110.0\build\net20\x64\SQLite.Interop.dll
?????文件????1162240??2019-05-30?16:39??新浪微博Cookie讀取-Demo\packages\System.Data.SQLite.Core.1.0.110.0\build\net20\x86\SQLite.Interop.dll
?????文件???????5857??2019-05-30?16:39??新浪微博Cookie讀取-Demo\packages\System.Data.SQLite.Core.1.0.110.0\build\net40\System.Data.SQLite.Core.targets
............此處省略274個(gè)文件信息
評論
共有 條評論