【问题标题】:retrieve info from Chrome bookmarks html file从 Chrome 书签 html 文件中检索信息
【发布时间】:2018-12-16 16:09:51
【问题描述】:

我想解析一个包含导出的 Google Chrome 书签的文件。这是一个 .html 文件 对于每个书签,我对 URL、ADD_DATE 和超链接标记末尾的标题感兴趣。

这是一个 Chrome 书签 html 文件的 sn-p。

<!DOCTYPE NETSCAPE-Bookmark-file-1>
<!-- This is an automatically generated file.
 It will be read and overwritten.
 DO NOT EDIT! -->
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8">
<TITLE>Bookmarks</TITLE>
<H1>Bookmarks</H1>
<DL><p>
    <DT><A HREF="https://www.programcreek.com/2011/03/java-write-to-a-file-code-example/" ADD_DATE="1508652899" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABVUlEQVQ4jcWSwYoTURBFz30vDTG8xcTgIhsHYdwFI7jRf/G3/AT/pA0mkF9woSLBTkyMbfKa6a5yIQmIDCIRvLu6VB2qLiV3F/9TcverSwGbvx1y4HS33N0v2aB3F+BkuzsxxrPf3LZkhxQDkhMkIemXIeDsxRi1Wq0o38z4vvvCxzbw6t2RGCUjEMxMXddJkkIIAmRmMjOFELTZbFgul6qqzyrfLnT/9ps+NdLr95mISW3beoyR7XZLXdeMRiMGgwHuTs6Z2WzG8XikKApy0/BgeMWz5y/40IhH9/QzxPV67YvFgq7r6Pf7TCYTxuMx8/mcqqooigJ3J4RAzpnr64dMp09lZq66rq0sSw6HA0VR0LYtIQRSSuz3e3q93m/ZNE3Dk+mUxzc39KqqspQSw+HwHKQkuq4jpXSuTxBJmBlfdztyzv/gD4CXlwAultw9/rntbv0A1ZC8BgHlLSQAAAAASUVORK5CYII=">How to Write a File Line by Line in Java?</A>
    <DT><A HREF="https://stackoverflow.com/questions/2885173/how-do-i-create-a-file-and-write-to-it-in-java" ADD_DATE="1508652914">How do I create a file and write to it in Java? - Stack Overflow</A>
    <DT><A HREF="https://www.javacodegeeks.com/2010/05/getting-started-with-youtube-java-api.html" ADD_DATE="1508996959" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABvUlEQVQ4jZWTP2sUURTFf3dmxcUUCVgFHZwU1m66dBmbLOkmXRy2WBtBDMh+gjCfIEg2hAiCi8tgY1axkKTZEQsTm52tLTISUoo2gQ1m3rXYP4TdjCavu+8ezj2cey5c8wV151ew5bSGdeG6BAoJSjqs5V/gqWC/lFnqKzwoGAlPo6VkHHOpgmDLqQLsflUXWBcgs7QLXI0AZQMktSA0oz+9d6uy5xsoqTB99qZcmyAoVj+5nOMefu8kzu1vDVMwyZ3pTnzycz7kBqk5lyMAUQBqEx7crOy1BPx+ZR6uLDxZF/CitWMZ9DsCpb52M9d7vZwWKpt3PSPSRiXcPaTLiMDyRGhg5PPqtut+/PJyJhNeiDEzKpoUKf7uDRU8qjttC/nw7mAnUaznAl3byPvTaCm5OLXXLE9sLXeNQd05UkhbB68A9QBsI/Pjq8wNkkIqkKIGRACJL8PlKrgYorNmeQUG+VAWo7Xjx0OclUeQWWzQD5E/FeyXBrIWgerqtuv+lwA1o7xndt9EY9uhse25t0/TUS//mEQbID/AxAv3d9zZutMW86cWPTu5mom95nIMxACzm44v4InaHmP38Bf/laoOI/FjiQAAAABJRU5ErkJggg==">Getting Started with YouTube Java API | Java Code Geeks - 2017</A>
</DL><p>

请注意,有些书签具有“ICON”属性,有些则没有。

我想检索除“ICON”值之外的所有内容。我的目标是从文件中检索信息并将其存储在数据库中,以便在另一个应用程序中组织和利用数据。

我为此研究了正则表达式,但没有太多使用它们的经验来使其充分发挥作用。我的首选语言是 Java,但如果 Python 工作得更好,我可以使用它。

【问题讨论】:

  • “我想解析一个文件..” 去吧。 如果您有任何问题,请随时与我们联系。

标签: java regex parsing html-parsing


【解决方案1】:

试试正则表达式:&lt;DT&gt;&lt;A HREF=\"(.*?)(?=\")\" ADD_DATE=\"(\d+)\".*?&gt;([\s\S]+?)&lt;\/A&gt;

Demo

链接将在第 1 组中,日期在第 2 组中,标题在第 3 组中

【讨论】:

  • 谢谢马特。很快就会对此进行测试。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-02-09
  • 2013-01-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多