summaryrefslogtreecommitdiff
path: root/scripts/importer.py
AgeCommit message (Collapse)Author
2021-01-26doc: Switch URLs to httpsFlorian Bruhin
2021-01-20Bump copyright yearsFlorian Bruhin
Closes #6015
2020-12-11importer: improve documentation and argumentsRyan Farley
Incorporates suggestions from #5913: help text accurately reflects real usage, 'html' name used instead of 'netscape', and the browser positional argument is expunged in favor of relying on explicit input format being specified, help epilog includes common browsers and their profile formats as well as a reminder that the output should be redirected to qutebrowser configurationfiles to take effect. fix tests to use new html name
2020-01-04Adjust copyrights for 2020Florian Bruhin
2019-02-22Update copyright for 2019Jay Kamat
2018-08-07Fix chrome bookmarks import on `sync_transaction_version`Jay Z
2018-02-05Update copyright yearsFlorian Bruhin
2017-12-15pylint: Re-enable bad-continuationFlorian Bruhin
And lots and lots of whitespace changes.
2017-12-15Add missing docstringsFlorian Bruhin
2017-11-08importer: trailing commasRyan Farley
2017-11-08:%s/Qutebrowser/qutebrowser/gRyan Farley
2017-11-06importer: Chrome supportRyan Farley
This adds Chrome/Chromium support to the importer (which ought to be the last of these). Bookmarks are read from JSON, while keywords/search engines (the same thing here) are read from the Web Data sqlite3 database, and converted from OpenSearch format. importer: add tests for opensearch
2017-11-01importer: add mozilla places.sqlite supportRyan Farley
This adds supports for the places.sqlite format as used by Firefox, Seamonkey, Pale Moon, and presumably others. Search engine support is limited to keyword-style '%s' functionality. vulture whitelist for row_factory
2017-10-26fix D401 in importerRyan Farley
2017-10-25remove unused importRyan Farley
2017-10-25default to Netscape format for importerRyan Farley
2017-10-24fix whitespaceRyan Farley
2017-10-24importer: documentation of bookmark typesRyan Farley
2017-10-24removed wrong optionRyan Farley
2017-10-21escape search engine URLs in importerRyan Farley
2017-10-17use sys.exitRyan Farley
2017-10-17various importer fixesRyan Farley
* Line breaks reinserted * None in place of '' * Check for browser before selecting default input format (to fix KeyError) * Remove redundant -S option and clarify help to make it slightly more obvious what output formats make sense * Added long-form arguments and slightly more sensible names (not really a fix, but I personally like having them)
2017-10-17make browser argument optionalRyan Farley
2017-10-17help text modRyan Farley
Browser choices are now formatted in the help text rather than listed manually. Redundant line regarding output default removed from epilogue
2017-10-17style, variable name typoRyan Farley
2017-10-17support multiple input formatsRyan Farley
This restructures things to better support future implementations of other input formats. The default formats are specified in a global dict of browsers, which prevents duplicating the list of choices for browser in bother get_args() and main(), and a new option enables overriding of the default.
2017-10-17default to new search formatRyan Farley
2017-10-17fix whitespace issuesRyan Farley
2017-10-17fix config.val in formatRyan Farley
2017-10-17importer support for keywords and search enginesRyan Farley
This allows importer.py to process Netscape HTML exports from Firefox (and other Mozilla browsers) with three distinct types: * bookmarks (sans shortcuturl attribute) * keywords (bookmarks with a shortcuturl attribute) * searches (keywords with a URL containing a %s substitution) The first two can be combined at will in either quickmark or bookmark output formats, the only difference being that keywords will be used in place of titles when exporting to quickmark format. Searches are exported to qutebrowser.conf format, or the new config.py format. Dictionaries are used in the import function for readability's sake, but the command line arguments follow the same general formula of true-false flags used to select input bookmark types and the output format.
2017-05-09Finally update copyrights...Florian Bruhin
2016-03-25Added option to output in "bookmark" format, clarified some "help" msgsClayton Craft
2016-03-24Fix importer script to output bookmarks in the right format for qutebrowser ↵Clayton Craft
to use
2016-03-20Fix flake8 issuesPhilipp Hansch
2016-03-20Fix lint issuePhilipp Hansch
2016-03-20Generalize bookmarks importPhilipp Hansch
This change adds `firefox` and `ie` as possible arguments to the importer script.
2016-02-01pylint: Don't require docstring for main() funcs.Florian Bruhin
2016-01-04Adjust copyright years.Florian Bruhin
2015-07-06Update to beautifulsoup 4.4.0.Florian Bruhin
Upstream changelog: Especially important changes: * Added a warning when you instantiate a BeautifulSoup object without explicitly naming a parser. [bug=1398866] * __repr__ now returns an ASCII bytestring in Python 2, and a Unicode string in Python 3, instead of a UTF8-encoded bytestring in both versions. In Python 3, __str__ now returns a Unicode string instead of a bytestring. [bug=1420131] * The `text` argument to the find_* methods is now called `string`, which is more accurate. `text` still works, but `string` is the argument described in the documentation. `text` may eventually change its meaning, but not for a very long time. [bug=1366856] * Changed the way soup objects work under copy.copy(). Copying a NavigableString or a Tag will give you a new NavigableString that's equal to the old one but not connected to the parse tree. Patch by Martijn Peters. [bug=1307490] * Started using a standard MIT license. [bug=1294662] * Added a Chinese translation of the documentation by Delong .w. New features: * Introduced the select_one() method, which uses a CSS selector but only returns the first match, instead of a list of matches. [bug=1349367] * You can now create a Tag object without specifying a TreeBuilder. Patch by Martijn Pieters. [bug=1307471] * You can now create a NavigableString or a subclass just by invoking the constructor. [bug=1294315] * Added an `exclude_encodings` argument to UnicodeDammit and to the Beautiful Soup constructor, which lets you prohibit the detection of an encoding that you know is wrong. [bug=1469408] * The select() method now supports selector grouping. Patch by Francisco Canas [bug=1191917] Bug fixes: * Fixed yet another problem that caused the html5lib tree builder to create a disconnected parse tree. [bug=1237763] * Force object_was_parsed() to keep the tree intact even when an element from later in the document is moved into place. [bug=1430633] * Fixed yet another bug that caused a disconnected tree when html5lib copied an element from one part of the tree to another. [bug=1270611] * Fixed a bug where Element.extract() could create an infinite loop in the remaining tree. * The select() method can now find tags whose names contain dashes. Patch by Francisco Canas. [bug=1276211] * The select() method can now find tags with attributes whose names contain dashes. Patch by Marek Kapolka. [bug=1304007] * Improved the lxml tree builder's handling of processing instructions. [bug=1294645] * Restored the helpful syntax error that happens when you try to import the Python 2 edition of Beautiful Soup under Python 3. [bug=1213387] * In Python 3.4 and above, set the new convert_charrefs argument to the html.parser constructor to avoid a warning and future failures. Patch by Stefano Revera. [bug=1375721] * The warning when you pass in a filename or URL as markup will now be displayed correctly even if the filename or URL is a Unicode string. [bug=1268888] * If the initial <html> tag contains a CDATA list attribute such as 'class', the html5lib tree builder will now turn its value into a list, as it would with any other tag. [bug=1296481] * Fixed an import error in Python 3.5 caused by the removal of the HTMLParseError class. [bug=1420063] * Improved docstring for encode_contents() and decode_contents(). [bug=1441543] * Fixed a crash in Unicode, Dammit's encoding detector when the name of the encoding itself contained invalid bytes. [bug=1360913] * Improved the exception raised when you call .unwrap() or .replace_with() on an element that's not attached to a tree. * Raise a NotImplementedError whenever an unsupported CSS pseudoclass is used in select(). Previously some cases did not result in a NotImplementedError. * It's now possible to pickle a BeautifulSoup object no matter which tree builder was used to create it. However, the only tree builder that survives the pickling process is the HTMLParserTreeBuilder ('html.parser'). If you unpickle a BeautifulSoup object created with some other tree builder, soup.builder will be None. [bug=1231545]
2015-01-03Update copyright yearsFlorian Bruhin
2014-10-15importer: Use with-block to open file.Florian Bruhin
2014-10-15importer: Add vim modelineFlorian Bruhin
2014-10-15importer: Add help message about ChromiumFlorian Bruhin
2014-10-15importer: Add module docstringFlorian Bruhin
2014-10-15importer: Fix printing of usageFlorian Bruhin
2014-10-15importer: Add docstrings.Florian Bruhin
2014-10-15importer: Clean up string formattingFlorian Bruhin
2014-10-15importer: Import cleanupFlorian Bruhin
2014-10-15importer: Use built-in openFlorian Bruhin
2014-10-15importer: Whitespace cleanupFlorian Bruhin