QiitaPicks
:fork_and_knife:Qiita[キータ]に投稿された記事を “つまんで” まとめPDFを生成:fork_and_knife:
Generate PDF/HTML from articles posted on qiita.com. Uses wkhtmltopdf on the back-end which renders HTML using Webkit.
できること
まとめPDFをコマンド一発で生成
qiita_picks
コマンドで、次の「まとめPDF」が生成できます。
- 指定URLのまとめPDF
- 特定のユーザが投稿した記事のまとめPDF
- 特定のユーザがストックした記事のまとめPDF
- 『先週ストックが多かった投稿ベスト20』メールに掲載された記事のまとめPDF
- 『今週Qiitaでストックした記事』メールに掲載された記事のまとめPDF
- はてなブックマークにブックマークされた記事(人気)のまとめPDF
- はてなブックマークにブックマークされた記事(新着)のまとめPDF
まとめPDFは、印刷・閲覧に最適化
印刷向けにスタイルシートを調整しています。
まとめPDFは、Gmailで送信可能
- Gmailの送受信には「ruby-gmail」を利用しています。
- メールは送受信共に、利用者自身となります。
Installation
QiitaPicks
% gem install qiita_picks
wkhtmltopdf
Install by hand (recommended):
https://github.com/pdfkit/pdfkit/wiki/Installing-WKHTMLTOPDF
Try using the
wkhtmltopdf-binary
gem (mac + linux i386)gem install wkhtmltopdf-binary
Note: The automated installer has been removed.
Getting Started
BASIC
# 指定したURLの記事をまとめる (カンマ区切り)
% qiita_picks <URLs>
# 特定ユーザーの記事をまとめる
% qiita_picks list_user_items -u <username> -a <access_token>
# 特定ユーザーがストックした記事をまとめる
% qiita_picks list_user_stocks -u <username> -a <access_token>
# 特定のタグに関連する記事をまとめる
% qiita_picks list_tag_items -t <tag> -a <access_token>
# 『先週ストックが多かった投稿ベスト20』メールに掲載された記事をまとめる
% qiita_picks email_weekly_popular -e <email> -p <password>
# 『今週Qiitaでストックした記事』メールに掲載された記事をまとめる
% qiita_picks email_weekly_stocked -e <email> -p <password>
# はてなブックマークにブックマークされた人気の記事をまとめる
% qiita_picks list_hatena_popular -t <tag>
# はてなブックマークにブックマークされた新着の記事をまとめる
% qiita_picks list_hatena_recent -t <tag>
タグ・ユーザ名での記事の取得時に、Qiita Developer APIを利用しています。 事前にアカウントとアクセストークンを取得してください。
ADVANCED
生成したPDFをメールに添付すると、デバイスを選ばずに、 いつでもオフラインで学習できるので、プログラマー生活がより快適になります。
それぞれのコマンドで生成したPDFを送信する場合は、-e <email>
と -p <password>
のオプションを設定してください。
:warning: メールの送受信は共に、指定したGmailアカウントから実行されます
# 指定したURLの記事をまとめる (カンマ区切り) + メール送信
% qiita_picks <URLs> -e <email> -p <password>
なお、email_weekly_popular
とemail_weekly_stocked
コマンドについては、
別途、-s <send_mail_flag>
を渡す必要があります。
# 『先週ストックが多かった投稿ベスト20』メールに掲載された記事 + メール送信
% qiita_picks email_weekly_popular -e <email> -p <password> -s true
特殊な処理がしたい場合は、以下を参考にご自由にどうぞ。
require 'qiita_picks'
url = %w{http://qiita.com/baba_s/items/c8d25456c0ee4ef52f94 http://qiita.com/y_minowa/items/f12aabbae7b0048cfe64}
generator = QiitaPicks::Generator.new(email, password, access_token)
# 指定したURLの記事をまとめる
generator.generate_from_url(url)
# 指定したURLの記事をまとめて 自身のGmailアカウントに送信
generator.generate_from_url(url, deliver: true)
TIPS
クラウドサービスにアップロード
ローカルにある、Dropbox等のクラウドサービスと同期するフォルダに向けて生成するのが、最もラクかと思います。メールで送りたくない場合は、お試しください。
JenkinsやCronで定期的に自動生成
qiita_picks
コマンドを定期的に実行するようスケジューリングすると、インプットが捗ります。下記のリンクを参考に設定してみてはいかがでしょうか。
Caution
- 作成したPDFを、インターネット上で公開・配布することはご遠慮ください。
- Qiita[キータ]へのアクセス負荷を考慮し、節度のあるご利用をお願いします。
- Qiita[キータ]は、Increments株式会社が提供するサービスです。当スクリプトは、Increments株式会社様による提供ではございませんので、何卒ご注意ください。
Feedback
何かお気づきの点があれば、こちらのフォームよりご意見をお送りください :sunglasses:
Contributing
不具合等ありましたら、お気軽にプルリクしてください。
- Fork it ( https://github.com/henteco-labs/qiita_picks/fork )
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a new Pull Request
Copyright
Copyright © 2015 HentecoLabs Inc. See LICENSE.txt for further details.