You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
The key has expired.
Additions
Added a Nuget Package
Added a ToJson() method to all browser information classes (Cookie, Login, Bookmark, ...) that serializes the class into a JSON string
Added Unit Tests for the different browser grabber classes.
It's now possible to retrieve the form history and saved credit cards from browsers (for now, credit cards only from Blink-based browsers).
CockyGrabber does now support the gathering of data on multiple blink browser profiles.
The BlinkGrabber and GeckoGrabber classes now have two methods for each browser information that check if the related file that stores that information exists: [name of the data]Exist(string) and Any[name of the data]Exist() (e. g: CookiesExist(string) and AnyCookiesExist()). The former returns a bool indicating if the, to the information corresponding, file of a specified browser profile exists, and the latter returns a bool indicating if that file exists on any browser profile (given that the browser supports having different profiles).
Added a SameSiteType enum in each of the Blink and Gecko cookie model classes, replacing the return type of the SameSite fields.
Improvements
Browser file paths are now dynamic (they now use Environment.GetFolderPath(Appdata) instead of C:\\Users\\{Environment.UserName}\\AppData...) and support other drive letters than C:\
Improved the UniversalGrabber Get-methods by using Parallel.ForEach instead of foreach making them faster by a LOT.
Changed the GetKey() method of the BlinkGrabber to virtual so that the user can overwrite it.
Fixed a bug in the GetKey() method of the BlinkGrabber class that caused it to crash when the JSON object os_crypt, which stores the value encrypted_key, contained other values than encrypted_key. (Changed regex expression from \"os_crypt\"\\s*:\\s*{\\s*\"encrypted_key\"\\s*:\\s*\".*?\"\\s*} to \"os_crypt\"\s*:\s*\{\s*.*?(?=\"encrypted_key)\"encrypted_key\"\s*:\s*\"(?<encKey>.*?)\"\s*\})
The Universal GetAllBlink...() methods are now checking if the related file and the Local State file, which stores the key, exist before grabbing the information to avoid any errors
Fixed the wrong expiry dates in the GetGeckoCookies() & GetGeckoCookiesBy() methods (Their cookie expiry dates used to always be: 01.01.1970 00:00:00 +00:00)
Some variables have been renamed to make them more readable
The arrays which contain the browser classes in the UniversalGrabber (BlinkGrabbers[] and GeckoGrabbers[]) are now public instead of private so that the user can change them if needed (e.g. to add a new browser)
The Timestamp conversion methods like UnixTimeInMillisecondsToDate(milliSeconds) or WebkitTimeStampToDateTime(microSeconds) in the EngineGrabbers have been moved to the new Time class in the Utility namespace
Some paths in the grabber classes (e.g: BraveGrabber; ChromeGrabber; OperaGrabber) have changed