从(邪恶的)feedly导出“以后保存”

时间:2015-02-21 17:36:06

标签: javascript jquery ssl https feedly

我试图从feedly迁移,因为不可接受(至少对我而言)搜索查询(完全)仅由专业版启用。

无论如何,要导出我之后保存的冗长列表"以后再保存#34;我发现了一些可爱的剧本: Simple script that exports a users "Saved For Later" list out of Feedly as a JSON string feedly-to-pocket。我被指示:

  

您必须关闭SSL(http而不是https)或jQuery不会加载!

所以我虽然添加了(ubuntu 14.04 / chrome 40 x64)

--ssl-version-min=tls1

到我的/usr/share/applications/google-chrome.desktop文件(以Exec =开头的所有行)。但是,当我尝试在浏览器控制台中运行它时,我得到了

  

此请求已被阻止;内容必须通过HTTPS提供。

那么,有什么建议吗? (也请原谅我

4 个答案:

答案 0 :(得分:3)

不是javascript,但这是我如何保存一个包含所有链接和摘录的html页面......

  1. 以Feed格式打开已保存的页面
  2. 向下滚动所以他们都在那里
  3. 检查任何元素(顶级文章是一个不错的选择),因此它会打开生成的html
  4. 找到div id="section0_column0"节点
  5. 右键单击&复制它
  6. 粘贴到Notepad ++
  7. 这个HTML不整洁所以继续......
  8. 正则表达式找到&更换
    1. 查找:(?s)<div id=.+?_main.+?>.+?(<a href=")(.+?)(").+?sans-serif">(.+?)</span>.+?</div>.+?</div>.+?</div>
    2. 替换:<div>$1$2$3>$2</a></div> <div> $4<br />&nbsp;<br /></div>
  9. 保存html页面。
  10. 在Chrome中打开它

答案 1 :(得分:1)

在jquery论坛中发布问题,解决方案相当简单(从属性字符串中删除http)

  第34行应该是     script.setAttribute(&#39; src&#39;,&#39; // code.jquery.com/jquery-latest.min.js');

所以要关闭循环 - 获取完整的可搜索/存档链接列表,不仅可以通过title / url,还可以上下文(!),您可以:

  1. 按照https://github.com/ShockwaveNN/feedly-to-pocket中的说明进行操作(由陌生人jakecigar建议进行更正,您还必须注册一个袖珍应用程序(获取消费者密钥)才能使ruby脚本正常工作)
  2. 从您的口袋帐户中导出HTML列表
  3. 将口袋列表导入Kifi
  4. 最后使用我的个人搜索引擎免费提供

答案 2 :(得分:0)

我知道我参加派对有点晚了但是我已经找了几天才找到一个相当简单的解决方案。其中没有一个在堆栈溢出或Web上的其他地方清楚或简明地列出。事实上,我发现了一种更简单的方法。

  1. 使用此Gist中的这个java脚本就像它指示https://gist.github.com/ShockwaveNN/a0baf2ca26d1711f10e2一样(注意这在上面引用并通过第一步中共享的@gep链接找到)

    • 一旦JS完成运行,它将下载一个文本文件。 (它仍然成功运行,大量运行,我只输出了近2500篇文章)
  2. 在SublimeText中创建一个空白的test.json。

  3. 将导出的文本文件中的所有条目复制到此json文件

    • 奇怪的是,你似乎需要复制和过去,因为我尝试重命名文本文件,当我这样做时,我在下一步收到错误
  4. 确保您已签入口袋

  5. 转到此处:https://getpocket.com/import/springpad
  6. 选择新创建的test.json
  7. 上传

    • 注意:在大型上传文件中,导入页面无法刷新(这似乎不是问题,因为我的所有文章都会进入我的帐户)
  8. 这允许您直接将json上传到您的袖珍账户。因此,不再乱用随机假设的其他修复。我希望这对未来的每个人来说都更容易。

答案 3 :(得分:0)

  1. 转到Feedly "saved" list并向下滚动,直到所有文章都已加载。
  2. 打开控制台并将以下Javascript粘贴到其中:

    function loadJQuery() {
    
        script = document.createElement('script');
        script.setAttribute('src', '//code.jquery.com/jquery-2.1.3.js');
        script.setAttribute('type', 'text/javascript');
        script.onload = loadSaveAs;
        document.getElementsByTagName('head')[0].appendChild(script);
    }
    
    function loadSaveAs() {
    
        saveAsScript = document.createElement('script');
        saveAsScript.setAttribute('src', 'https://cdn.rawgit.com/eligrey/FileSaver.js/5733e40e5af936eb3f48554cf6a8a7075d71d18a/FileSaver.js');
        saveAsScript.setAttribute('type', 'text/javascript');
        saveAsScript.onload = saveToFile;
        document.getElementsByTagName('head')[0].appendChild(saveAsScript);
    }
    
    function saveToFile() {
    
        // Loop through the DOM, grabbing the information from each bookmark
        map = jQuery(".entry.quicklisted").map(function(i, el) {
            var $el = jQuery(el);
            var regex = /Published:(.*)(.*)/i;
            return {
                title: $el.attr("data-title"),
                url: $el.attr("data-alternate-link"),
                summary: $el.find(".summary")[0].innerHTML,
                time: regex.exec($el.find("span.ago").attr("title"))[1]
            };
        }).get(); // Convert jQuery object into an array
    
        // Convert to a nicely indented JSON string
        json = JSON.stringify(map, undefined, 2);
        var blob = new Blob([json], {type: "text/plain;charset=utf-8"});
        saveAs(blob, "FeedlySavedForLater" + Date.now().toString() + ".txt");
    }
    
    loadJQuery()
    
  3. 来源:Feedly-Export-Save4Later