将Firefox书签(和标签)导出为CSV吗?

时间:2019-04-28 17:53:41

标签: firefox bookmarks

Firefox使您可以导出到HTML,尽管我可以编写一个使用正则表达式将其解析为CSV的脚本,但我想知道是否存在任何允许我们直接导出为CSV的实用程序/ Firefox插件。也有兴趣是否有这样的导入方式。

2 个答案:

答案 0 :(得分:0)

我仅将这个问题(Powershell脚本)放在一起。我没有导入方法。请参阅代码中的注释,以了解发生了什么。书签确实比名称和URL更为重要,但这是最重要的数据,因此,这就是我为CSV收集的所有信息。另外,您必须将书签导出为HTML,将书签转换为CSV文件。

#set paths
#where your bookmarks.html is
$bkmarkPath = "C:/Users/jhancock/Desktop/test/FFbookmarks/bookmarks.html"
#where you want your CSV file to be. 
$newCSVPath = 'C:/Users/jhancock/Desktop/test/FFbookmarks/bookmarks.csv'

#get the HTML and parse it out.
$bookmarkpage = New-Object -ComObject "HTMLFile"
$bookmarkpage.IHTMLDocument2_write($(Get-content $bkmarkPath -Raw))

#get the links, and link names and put into variable.
$atags = $bookmarkpage.all.tags("a") | % innerText; 
$links = $bookmarkpage.links | % ie8_href

#clear the file if it exists  
if (Test-Path $newCSVPath) {
  clear-content $newCSVPath
}

#create a new csvfile if it doesn't exist
"""Name"",""URL""`n" | Out-File $newCSVPath -Append

#add number of lines equal to number of links
For ($i=0; $i -lt $links.length; $i++) {
    "`n"""",""""" | Out-File $newCSVPath -Append
    }

#sleep while file is created
start-sleep 2

#import our fresh CSV file
$csv = Import-Csv $newCSVPath -Header Name, URL | Select-object -skip 1

#populate our links and URLs into the CSV
$numItems = $links.Count
for ($i = 0; $i -lt $numItems; $i++) {
    $csv[$i].Name = $atags[$i]
    $csv[$i].URL = $links[$i]
}
#Generate the CSV!
$csv | Export-Csv $newCSVPath -NoTypeInformation

答案 1 :(得分:0)

我相信这样的扩展名目前还不存在,但是我想让您知道,您也可以将书签导出为JSON格式,与使用HTML导出(。 ..取决于)。

Mozilla的Firefox官方支持页面Restore bookmarks from backup or move them to another computer在“手动备份”下提到了如何执行此操作,尽管我发现通过浏览器菜单栏导航更容易: Bookmarks > Show All Bookmarks,单击星形按钮,然后选择Backup...。这将提示“保存文件”对话框,以获取具有当前日期的名为bookmarks-YYYY-MM-DD.json的JSON文件。

编辑:最接近使用FF插件的解决方案可能是JavaScript小书签。我包括了第一个简单版本in a Gist over on GitHub的代码。您可以在浏览器中打开书签的HTML导出来运行它。