|
3 | 3 | CockyGrabber is a C# library for the collection of browser information such as cookies, logins, and more. |
4 | 4 | It's also very *easy* to integrate into your Projects. |
5 | 5 |
|
6 | | -## Table Of Contents |
| 6 | +> *CockyGrabber is still in development and will receive future updates* so if you found any **Bugs**, please create an Issue and report it! |
7 | 7 |
|
8 | | -1. [Integration](#integration) |
9 | | -2. [Usage](#usage) |
10 | | - * [Importing CockyGrabber](#importing-cockygrabber) |
11 | | - * [Grabbing Cookies](#grabbing-cookies) |
12 | | - * [Grabbing Logins](#grabbing-logins) |
13 | | -3. [What's Next](#whats-next) |
14 | | -4. [End](#end) |
| 8 | +## Documentation: Table Of Contents |
15 | 9 |
|
16 | | -## Integration |
17 | | - |
18 | | -Before you can use CockyGrabber you will need to download a few necessary packages. You can get them from external sources or easily with [NuGet](https://www.nuget.org/): |
19 | | - |
20 | | -* [BouncyCastle](http://www.bouncycastle.org/csharp/) |
21 | | -* [System.Data.SQLite](https://system.data.sqlite.org/) |
22 | | -* [System.Security.Cryptography.ProtectedData](http://www.dot.net/) |
23 | | - |
24 | | -<!--Or you can download CockyGrabber directly from NuGet with the necessary packages included: [LINK]--> |
25 | | - |
26 | | -## Usage |
27 | | - |
28 | | -### Importing CockyGrabber |
29 | | - |
30 | | -```cs |
31 | | -using CockyGrabber; |
32 | | -using CockyGrabber.Grabbers; |
33 | | -``` |
34 | | - |
35 | | -### Grabbing Cookies |
36 | | - |
37 | | -Grabbing stuff with CockyGrabber is really easy! |
38 | | - |
39 | | -To set an example here is how to collect Chrome cookies: |
40 | | - |
41 | | -```cs |
42 | | -ChromeGrabber grabber = new ChromeGrabber(); // Define Grabber |
43 | | -List<Chromium.Cookie> cookies = grabber.GetCookies(); // Collect all Cookies with GetCookies() |
44 | | -
|
45 | | -// Print Hostname, Name and Value of every cookie: |
46 | | -foreach(Chromium.Cookie cookie in cookies) // Since Chrome is a Chromium-based Browser it uses Chromium Cookies |
47 | | -{ |
48 | | - string cookieHostname = cookie.HostKey; |
49 | | - string cookieName = cookie.Name; |
50 | | - string cookieValue = cookie.EncryptedValue; |
51 | | - Console.WriteLine($"{cookieHostname} = {cookieName}: {cookieValue}"); |
52 | | -} |
53 | | -``` |
54 | | - |
55 | | -*To collect the Cookies of any other Chromium-based Browser just replace `ChromeGrabber` with `OperaGxGrabber`, `BraveGrabber`, and so on...* |
56 | | - |
57 | | -</br> |
58 | | - |
59 | | -Browsers like Firefox, which are based on other engines have their own classes, such as 'Firefox.Cookie' since they aren't Chromium-based: |
60 | | - |
61 | | -```cs |
62 | | -FirefoxGrabber grabber = new FirefoxGrabber(); // Define Grabber |
63 | | -List<Firefox.Cookie> cookies = grabber.GetCookies(); // Collect all Cookies with GetCookies() |
64 | | -
|
65 | | -// Print Hostname, Name, and Value of every cookie: |
66 | | -foreach(Firefox.Cookie cookie in cookies) // Firefox has its own engine and therefore its own Cookie class (Firefox.Cookie) |
67 | | -{ |
68 | | - string cookieHostname = cookie.Host; |
69 | | - string cookieName = cookie.Name; |
70 | | - string cookieValue = cookie.Value; |
71 | | - Console.WriteLine($"{cookieHostname} = {cookieName}: {cookieValue}"); |
72 | | -} |
73 | | -``` |
74 | | - |
75 | | -### Grabbing Logins |
76 | | - |
77 | | -CockyGrabber can also grab Login Data such as Usernames and Passwords. |
78 | | - |
79 | | -Here is an example with the `BraveGrabber()`: |
80 | | - |
81 | | -```cs |
82 | | -BraveGrabber grabber = new BraveGrabber(); // Define Grabber |
83 | | -List<Chromium.Login> logins = grabber.GetLogins(); // Collect all Logins with GetLogins() |
84 | | -
|
85 | | -// Print the Origin(URL), Username value and Password value of every Login: |
86 | | -foreach(Chromium.Login login in logins) // Since Brave is a Chromium-based Browser it uses Chromium Logins |
87 | | -{ |
88 | | - string loginUrl = login.OriginUrl; |
89 | | - string loginUsername = login.UsernameValue; |
90 | | - string loginPassword = login.PasswordValue; |
91 | | - Console.WriteLine($"{loginUrl} = {loginUsername}:{loginPassword}"); |
92 | | -} |
93 | | -``` |
94 | | - |
95 | | -*Same thing goes here if you want to collect OperaGx, Chrome or Edge Cookies just replace `BraveGrabber` with `OperaGxGrabber`, `EdgeGrabber`, ...* |
| 10 | +1. [Integration](https://github.com/MoistCoder/CockyGrabber/wiki/Integration) |
| 11 | +2. [Usage](https://github.com/MoistCoder/CockyGrabber/wiki/Usage) |
| 12 | + * [Importing CockyGrabber](https://github.com/MoistCoder/CockyGrabber/wiki/Usage#importing-cockygrabber) |
| 13 | + * [Grabbing Cookies](https://github.com/MoistCoder/CockyGrabber/wiki/Usage#grabbing-cookies) |
| 14 | + * [Grabbing Logins](https://github.com/MoistCoder/CockyGrabber/wiki/Usage#grabbing-logins) |
| 15 | + * [Grabbing data from multiple Browsers](https://github.com/MoistCoder/CockyGrabber/wiki/Usage#grabbing-data-from-multiple-browsers) |
| 16 | + * [Getting specific data by Headers](https://github.com/MoistCoder/CockyGrabber/wiki/Usage#getting-specific-data-by-headers) |
| 17 | + * [Catching Exceptions](https://github.com/MoistCoder/CockyGrabber/wiki/Usage#catching-exceptions) |
96 | 18 |
|
97 | 19 | </br> |
98 | 20 |
|
99 | | -... And if you want to grab Logins from non-Chromium based browsers like Firefox then you'll need to use a special class like `Firefox.Login`: |
100 | | - |
101 | | -```cs |
102 | | -FirefoxGrabber grabber = new FirefoxGrabber(); |
103 | | -List<Firefox.Login> logins = grabber.GetLogins(); |
104 | | - |
105 | | -foreach(Firefox.Login login in logins) |
106 | | -// ... |
107 | | -``` |
108 | | - |
109 | | -#### **If you need more examples, then go to the Examples folder!** |
110 | | - |
111 | 21 | ## What's Next |
112 | 22 |
|
113 | 23 | 1. Adding more things to grab like bookmarks, credit cards, extensions, ... |
114 | 24 | 2. Async Funtions |
115 | | -3. Turn CockyGrabber into a NuGet Package |
| 25 | +3. Creating an NuGet Package |
116 | 26 | 4. Adding custom Functions that replace the packages |
117 | 27 | 5. Creating a minimalized File that anyone can easily implement in their Project without referencing CockyGrabber itself |
118 | | -6. Migrate to NET Core |
119 | | -7. Create a better documentation |
| 28 | +6. Migrate to .NET Core / .NET Standart *(maybe)* |
| 29 | +7. Creating a better documentation |
120 | 30 | 8. Improving the in-code documentation |
121 | | -9. Create something like a `UniversalCookie` which would replace `Chromium.Cookie` and `Firefox.Cookie` *(Same thing goes for Logins)* |
122 | | -10. Making the `UniversalGrabber` less confusing |
| 31 | +9. Making the `UniversalGrabber` less confusing (and improving it in general) |
123 | 32 |
|
124 | 33 | ## End |
125 | 34 |
|
126 | | -Thats it for now! |
127 | | - |
128 | | -</br> |
129 | | - |
130 | | -*CockyGrabber is still in development and will receive future updates* so if you found any **Bugs**, please create an Issue and report it! |
| 35 | +Thats it for now!</br> |
| 36 | +I hope you like this little project! ^^ |
0 commit comments