Habréのお気に入りのPDFへのエクスポート

こんにちは、ハブロフスク!





皆さんの多くは、「Habrから記事を保存するだろう」という考えに訪れたことがあると思います。

同じ考えが2日前に私に来ました。 すべての記事だけでなく、お気に入りの記事だけを保存したいのですが、個別に保存するのではなく、一度に保存したかったのです。

最初の考えは、これらすべてを引き出すスクリプトを書くことです。 すでに Pythonを学びましたがまだ Pythonで生成する必要はありませんでした。



私はねじれていました...しかし、OpenSourceとHabrは私を救った!

たくさん読むことに興味がない人のための記事の簡単な要約
この記事では、修正されたPythonスクリプトfav2pdfについて説明します。

vrtxスクリプトの元の作成者、彼に感謝します。

「使用法は千の言葉よりも優れています!」

usage: fav2pdf.py [-h] [-d OUTPUT_DIR] [--from-date FROM_DATE] [--to-date TO_DATE] [--all-in-one] [--only-hubs [ONLY_HUBS [ONLY_HUBS ...]]] [--no-comments] [--no-symlinks] user Tool for save favorite posts from habrahabr.ru in pdf's or html's positional arguments: user habrahabr.ru username optional arguments: -h, --help show this help message and exit -d OUTPUT_DIR, --output-dir OUTPUT_DIR Directory for output --from-date FROM_DATE From date --to-date TO_DATE To date --all-in-one Save all posts in one PDF-file --only-hubs [ONLY_HUBS [ONLY_HUBS ...]] Save only posts from hubs. For multiple: "--only-hubs Hub1 Hub2 --" --no-comments Dont save comments from posts --no-symlinks Dont create symlinks to posts --create-html Create html's instead of pdf's --create-url-list Just save user.txt with all links
      
      









写真の構成
Habrに再び感謝します。 KDPVは、記事に1回2回掲載された2つから収集しました。



最初の考えの後、2番目が私を訪問しました。 これについて考えたのは私だけではありませんでした。 そして、彼はおいしいものを探して、Habrを系統的に検索し始めました。 そしてかなり早く、私はvrtxの友人による記事出会い 、そこで彼が私が望んでいたことについて説明しました。



しかし、いつものように、しかし:

彼のfav2pdf.pyスクリプトは、お気に入りからすべての記事を収集し、それらを1つのPDFにマージします。コメントがなくても、記事自体よりもはるかに貴重な情報が含まれていることがよくあります。

記事用に別のPDFが必要でした。 選択の余地あり:コメントあり、コメントなし、ハブごとに分類するかどうか...



fav2pdf.pyスクリプト(私はOpenSourceの動きに敬意を表しています)を分岐させた 、私は最初に小さな改善を行い、すべてが別々のファイルに保存されるようにしました。 著者は、彼の業績が誰かにとって有用であるという事実に満足しています。



確かに、私は少し恥ずかしかった。 何とかスクリプトを修正し、必要なことを行いました。 しかし、すべての行商人がpythonを知っているわけではなく、必要に応じてスクリプトを調整できるわけではありません。



そのため、もう少し時間をかけて、fav2pdfスクリプトを非常に有用なユーティリティに仕上げました。

このスクリプトにより、次のことが可能になります。

-PDFを保存できるディレクトリを選択します(ただし、pdf'oksのセットに対して投稿とハブのサブフォルダが作成されます)

-時間制限を設定する(たとえば、2013年の記事のみを保存する)

-コメントを保存するかどうかを選択します

-すべてを1つのPDFに保存するか、複数のpdf'okに分割します

-PDFが多数ある場合は、シンボリックリンク(posts / post_id.pdfへのシンボリックリンクを持つハブ/ hub_nameサブフォルダー)からルブリケーターを作成して、コレクションを簡単にナビゲートすることもできます。



スクリプトの依存関係
スクリプトが正しく機能するためには、 pipを介して次のパッケージをインストールする必要がありました(pyhton2用):

-ピサ

-reportlab

-html5lib

-リクエスト

-lxml



ユーティリティコマンドラインオプション
 usage: fav2pdf.py [-h] [-d OUTPUT_DIR] [--from-date FROM_DATE] [--to-date TO_DATE] [--all-in-one] [--only-hubs [ONLY_HUBS [ONLY_HUBS ...]]] [--no-comments] [--no-symlinks] user Tool for save favorite posts from habrahabr.ru in pdf's or html's positional arguments: user habrahabr.ru username optional arguments: -h, --help show this help message and exit -d OUTPUT_DIR, --output-dir OUTPUT_DIR Directory for output --from-date FROM_DATE From date --to-date TO_DATE To date --all-in-one Save all posts in one PDF-file --only-hubs [ONLY_HUBS [ONLY_HUBS ...]] Save only posts from hubs. For multiple: "--only-hubs Hub1 Hub2 --" --no-comments Dont save comments from posts --no-symlinks Dont create symlinks to posts --create-html Create html's instead of pdf's --create-url-list Just save user.txt with all links
      
      









シミュレーションは以上です。 誰もがそれを好きなら、あなたの健康を使用してください!

誰かが何かを見逃している場合は、コメントに機能リクエストを書いて、可能な限りそれを実装しようとします。



PS。 出力をHTMLに実装しました。 (ネタバレはコマンドラインの説明を更新しました。)

PS2。 URL投稿の簡単なリストをtxtに実装しました。 コマンドラインから指定できるすべての制限(日付、ハブ)がこのリストに適用されます。 (ネタバレはコマンドラインの説明を更新しました。)



All Articles