読者です 読者をやめる 読者になる 読者になる

エンジニアの頭の中

フリーランスエンジニアが書く技術系ブログです。

SeleniumとPythonを使用してネットプリントへの書類登録を自動化

http://www.printing.ne.jp/support/common_v5/src/jpn/images/nps-logo.png

あらすじ

仕事の取引先とは、見積書や請求書などの書類を、郵送でやりとりしなくてはならないのですが、印刷するためのプリンタを持っていないため(たまにしか印刷しないので所有したくない)、紙の書類を印刷する必要がある時は、ネットプリントというウェブサービスを使用しています。

www.printing.ne.jp

ネットプリントは、ウェブ上で登録した文書をセブンイレブンのプリンタで印刷できるサービスです。

月に数枚程度しか印刷しないので、これで十分なのですが、毎月使用していると、ブラウザから印刷するためのファイルを登録する作業さえも面倒に感じるようになり、自動化しようと思いました。

自動化のイメージとしては、印刷したいファイルのファイルパスを自動化プログラムに渡して起動すれば、あとはプログラムがネットプリントにファイルを登録してくれるというものです。

外部から印刷用ファイルを登録するための、APIが公開されていれば、手っ取り早いのですが、調べてみた結果、APIは公開されていませんでした。 そのため、普段手作業で行なっていたブラウザの操作を、Seleniumを使って自動化するためのコードを書きました。

使用した Python のバージョンは、3.5.1 です。(別に3系である必要はありません)

前準備

Seleniumをインストール

Seleniumを使用して、ウェブブラウザを操作するため、pipを使用してPythonSeleniumライブラリをインストールします。

$ pip install selenium

$ pip show selenium
---
Metadata-Version: 2.0
Name: selenium
Version: 3.3.3
Summary: Python bindings for Selenium
Home-page: https://github.com/SeleniumHQ/selenium/
Author: UNKNOWN
Author-email: UNKNOWN
Installer: pip
License: Apache 2.0
Location: /Users/mi2/.pyenv/versions/3.5.1/lib/python3.5/site-packages
Requires:
Classifiers:
  Development Status :: 5 - Production/Stable
  Intended Audience :: Developers
  License :: OSI Approved :: Apache Software License
  Operating System :: POSIX
  Operating System :: Microsoft :: Windows
  Operating System :: MacOS :: MacOS X
  Topic :: Software Development :: Testing
  Topic :: Software Development :: Libraries
  Programming Language :: Python
  Programming Language :: Python :: 2.6
  Programming Language :: Python :: 2.7
  Programming Language :: Python :: 3.3
  Programming Language :: Python :: 3.4
  Programming Language :: Python :: 3.5
  Programming Language :: Python :: 3.6

Chrome Driverをインストール

今回は、ウェブブラウザは、Google Chrome を使用します。 Seleniumで、Chromeを操作するために、Chromeのwebdriverが必要になります。 Homebrew でインストールします。

$ brew install chromedriver

$ chromedriver --version
ChromeDriver 2.29.461585 (0be2cd95f834e9ee7c46bcc7cf405b483f5ae83b)

実装

Seleniumを使用して、Google Chrome の操作を自動化するためのコードを、Pythonで書きます。

upload_to_netprint.py

#!/usr/bin/env python
# coding: utf-8

import sys
import time

from selenium import webdriver


def upload(username, password, file):
    driver = webdriver.Chrome(executable_path="/usr/local/bin/chromedriver")
    try:
        driver.implicitly_wait = 3  # ページロード待ち時間(秒)
        driver.delete_all_cookies()  # Cookieを削除

        # ログイン画面取得
        print("[Step 1] Get login display.")
        driver.get("https://www.printing.ne.jp/usr/web/NPCM0010.seam")
        driver.find_element_by_id("NPCM0010:userIdOrMailads-txt").send_keys(username)
        driver.find_element_by_id("NPCM0010:password-pwd").send_keys(password)

        # ログイン実行
        print("[Step 2] Login.")
        driver.find_element_by_id("login").click()

        # create-document
        print("[Step 3] Open create-document display.")
        driver.find_element_by_xpath('//*[@id="NPFL0010"]/section[1]/div[1]/a').click()

        # プリントの設定
        print("[Step 4] Input printing preferences.")
        driver.find_element_by_xpath('//*[@id="NPFL0020"]/table/div/tbody/tr[3]/td[2]/div[1]/label[1]/span[2]').click() # 用紙サイズはA4を指定
        driver.find_element_by_xpath('//*[@id="NPFL0020"]/table/div/tbody/tr[5]/td[2]/div[2]/label[3]').click() # カラーモードは白黒を指定
        driver.find_element_by_xpath('//*[@id="NPFL0020"]/table/div/tbody/tr[6]/td[2]/div/label[2]/span[2]').click() # 予約番号タイプは「数字のみ」を指定
        driver.find_element_by_xpath('//*[@id="checkBox3"]/div[1]/label[2]/span[2]').click() # 登録結果通知は「設定する」を指定
        driver.find_element_by_xpath('//*[@id="upload-document"]').send_keys(file) # アップロード対象ファイルを選択
        driver.find_element_by_xpath('//*[@id="update-btn"]/span[2]/span').click() # アップロード実行

        time.sleep(2)

    finally:
        driver.close()


if __name__ == "__main__":
    if len(sys.argv) != 4:
        print("Usage: $user $pass $file")
        exit(1)
    upload(username=sys.argv[1], password=sys.argv[2], file=sys.argv[3])
    exit(0)

webdriverの初期化時にchromedriverのパスを指定する

executable_pathにchromedriverのパスを指定しています。

driver = webdriver.Chrome(executable_path="/usr/local/bin/chromedriver")

予めchromedriverにパスが通っている場合は、driver = webdriver.Chrome()と、引数無しで書いても問題ありません。

操作対象の要素の指定

画面の要素は、XPathで指定しています。

driver.find_element_by_xpath('//*[@id="NPFL0020"]/table/div/tbody/tr[3]/td[2]/div[1]/label[1]/span[2]').click() # 用紙サイズはA4を指定

印刷設定を変更したい場合は、コードも書き換える必要があります。(最終的には、印刷設定をコードと切り離して指定できるようにしたい) 画面の要素のXPathを調べて、書き換えてください。XPathの簡単な取得方法は、以下の記事でも紹介しています。

mi2.hatenablog.com

実行

ネットプリントにログインするため、ネットプリントのアカウントを持っている必要があります。 実行時に、引数でネットプリントのアカウントの認証情報と、登録対象のファイルのパスを渡します。

upload_to_netprint.py $username $password $filepath

引数の内容は、以下の通りです。

driver.find_element_by_xpath('//*[@id="checkBox3"]/div[1]/label[2]/span[2]').click()で、登録結果を通知するよう指定しているため、プログラムが正常終了した後は、登録結果がメールで通知されます。

セブンイレブンへ行って、専用の端末にこのメールに記載された番号を入力してプリントする事ができます。

まとめ

このプログラムによって、ネットプリントにファイルを登録するために、ブラウザを操作は自動化できましたが、プログラムの実行の際に、ファイルパスを渡してプログラムを実行するのは、若干面倒です。 次は、このプログラムを実行するためのトリガーを仕掛けて、自動起動を実現したいと思います。

ChromeでXPathを簡単に取得する

スクレイピングするためのコードを書く場合など、XPathを取得したい場合があるかと思います。

Google Chromeを使用して、ウェブページのXPathを簡単に取得する方法について、記載します。

そもそもXPathとは

XPath(XML Path Language)とは、XML文書の木構造内のノードの位置を指し示すためのパスのことです。XPathについては、わかりやすく説明している記事がたくさんあるので、そちらをご覧ください。

www.atmarkit.co.jp

XPath 取得方法

  1. Google Chrome で、目的のページへアクセスします。
  2. XPathを取得したい要素にマウスカーソルを合わせて右クリックします。
  3. 表示されたメニューから、「Inspect」を選択します。

    例:GIZMODOというタイトル部分のXPathを取得する場合

    f:id:mitsu3204:20170415161432p:plain

  4. Developer Toolが起動し、該当の要素のHTMLソースにフォーカスした状態となるので、右クリックして、Copy -> Copy XPath を選択します。
    f:id:mitsu3204:20170415161455p:plain
  5. これで、クリップボードにコピーされています。あとは、使用箇所にペーストして使いましょう。以下のような、XPathが出力されます。
    //*[@id="app"]/div/div/header/div/h1/a/svg/g/path

 

 

【2017年版】Bloggerのカスタムドメインにお名前.comで取得したドメインを設定する

https://2.bp.blogspot.com/-DoeR_SHpjSk/Vo9HKuimy2I/AAAAAAAAAFE/ROsHesQeeXU/s1600-r/eblogger.png

 

Bloggerのブログに、お名前.comで管理しているドメインをカスタムドメインとして設定する方法を紹介します。

 

必要なのは、以下の二つの設定を行うだけです。

  1. BloggerサードパーティURLにカスタムドメインを設定

  2. お名前.comのドメインNaviでCNAMEを設定

 

1.BloggerサードパーティURLにカスタムドメインを設定

  1. Bloggerにログインします。
  2. 画面左側のメニューから、「設定」の下に表示されている「基本」をクリックして設定画面を開きます。
    f:id:mitsu3204:20170411000210p:plain
  3. 「ブログのサードパーティURLを設定」をクリックします。

    f:id:mitsu3204:20170411000508p:plain

  4. 「http://」の後ろに使用したいドメインを入力して「保存」をクリックします。

    例えば、自分の購入したドメインが「example.com」で、ブログ用のサブドメインとして「blog」を使用したい場合は、「blog.example.com」と入力します。
    ※ここで付与した「blog」という名前は、後でお名前.comの設定にも使用します。
    f:id:mitsu3204:20170411000803p:plain

2. お名前.comのドメインNaviでCNAMEを設定

  1. お名前.comのドメインNaviにログインします。
  2. ドメイン設定タブを開き、「ネームサーバーの設定」から、「DNS関連機能の設

     

    定」をクリックします。

    f:id:mitsu3204:20170410234656p:plain

  3. 対象のドメイン名の横のラジオボタンをチェックして、「次へ進む」をクリックします。

    f:id:mitsu3204:20170410235043p:plain

  4.  「DNSレコードを設定する」をクリックします。

    f:id:mitsu3204:20170410235200p:plain

  5.  以下のとおり入力したら、「追加」をクリックして、CNAMEのレコードを追加します。


    ホスト名:blog(Blogger側で指定した名前に応じて変更してください)
    TYPE:CNAME
    VALUE:ghs.google.com

    f:id:mitsu3204:20170410235523p:plain
  6. 画面下部の「確認画面へ進む」をクリックします。
  7. 表示された内容を確認して、入力に間違いがなければ、「設定する」をクリックします。

 

以上で完了です。

 

DNSの変更が反映されるまで、時間がかかる場合があります。少し時間をおいてから、blog.example.comにアクセスしてみましょう。(example.comの部分は自分のドメインに置き換えてください。)

Bloggerの自分のブログ画面が表示されれば成功です。

 

マテリアルデザインのアイコンをAndroidアプリに簡単に使用する方法

最近のAndroidアプリといったら、マテリアルデザインが主流です。

知っている人も多いと思いますが、マテリアルデザインのアイコンは、Googleが公開しているサイトからゲットして、自分のAndroidアプリに簡単に取り込むことができます。

その手順を説明します。 

 

アイコンは、以下のサイトから取得することができます。

material.io

このサイトでは、たくさんのマテリアルデザインのアイコンを公開していて、Androidアプリに限らず、iOS用、ウェブサイト用のアイコンを入手することも可能です。

アイコン入手手順

まず、ブラウザで上記のサイトへアクセスします。

f:id:mitsu3204:20170408190633p:plain

画面をスクロールしていくと、以下のように入手可能なアイコンの一覧を確認できます。

f:id:mitsu3204:20170408190614p:plain

使用したいアイコンの名前がわかっているのであれば、「Search」と表示されているテキストフィールドに、テキストを入力して、表示されるアイコンを絞り込むことができます。名前がわからないのであれば、普通にスクロールして、目的のアイコンを探しましょう。

 

アイコンが見つかったら、そのアイコンをクリックします。クリックすると画面下部に青いバーが表示されます。

f:id:mitsu3204:20170408191022p:plain

 

アイコンのdpを選択します。アイコンの使用箇所によって、24dpや48dpなど適切なものを選択してください。

アイコンの色も黒か白かを選択可能です。(例では48dpで黒を選択します)

選択したら、PNGSをクリックすると、指定したアイコンのpng画像をダウンロードできます。

f:id:mitsu3204:20170408191347p:plain

例の画像の通りに入力すると、ic_settings_black_48dp.zip というファイルがダウンロードできます。

イコン画像zipファイルの構成

zipファイルを展開すると、以下の構成になっています。androidios、webと3つのディレクトリがありますが、今回使用するのは、androidディレクトリです。

$ tree ic_settings_black_48dp
ic_settings_black_48dp
├── android
│   ├── drawable-hdpi
│   │   └── ic_settings_black_48dp.png
│   ├── drawable-mdpi
│   │   └── ic_settings_black_48dp.png
│   ├── drawable-xhdpi
│   │   └── ic_settings_black_48dp.png
│   ├── drawable-xxhdpi
│   │   └── ic_settings_black_48dp.png
│   └── drawable-xxxhdpi
│       └── ic_settings_black_48dp.png
├── ios
│   └── ic_settings_48pt.imageset
│       ├── Contents.json
│       ├── ic_settings_48pt.png
│       ├── ic_settings_48pt_2x.png
│       └── ic_settings_48pt_3x.png
└── web
    ├── ic_settings_black_48dp_1x.png
    └── ic_settings_black_48dp_2x.png

9 directories, 11 files

androidディレクトリの配下を見ると、mdpiからxxxhdpiに至るまで、各dpのアイコンが揃っています。

アイコンをそれぞれ作るのは面倒な作業なので、これは助かります。 

Androidアプリへの適用方法

ic_settings_black_48dp/androidディレクトリの中にある、以下のディレクトリをまとめてリソースディレクトリへコピーするだけです。

以下を全てコピーして

  • drawable-hdpi
  • drawable-mdpi
  • drawable-xhdpi
  • drawable-xxhdpi
  • drawable-xxxhdpi

アプリのリソース用ディレクトリ(app/src/main/res/)の配下へペーストしましょう。

これだけで完了です。 

読書、勉強、仕事などにオススメ!六本木ライブラリー アカデミーヒルズを紹介

六本木ライブラリー アカデミーヒルズとは?

http://www.academyhills.com/library/roppongi/tqe2it00000kfa6h-img/tqe2it00000kfaej.jpg

簡単にいうと、図書館とカフェとワークスペースが一つになったような、会員制の施設です。

何ができるかというと、読書、昼寝、お喋り、勉強、仕事などと人によってやっていることは様々です。

ここ数年、私はこの施設を頻繁に利用しているのですが、設備やアクセスの良さ、料金の安さなど、オススメできるポイントが多い場所なので、紹介しようと思います。

特にノマドワーカーや、勉強や読書に集中したい人などには、特にオススメです。

 

六本木ライブラリー アカデミーヒルズの特徴

施設の特徴について記載していきます。

本について📖

http://www.academyhills.com/library/roppongi/tqe2it00000kfa6h-img/tqe2it00000kfafx.jpg

通常の図書館と比べてしまうと、本の量は多くないのですが、旬な本があったり、変わった本があったりします。

本を検索するための端末があるので、目的の本の配置場所を調べることも可能です。

高いところにある本は、手が届かず自分では取れません。。。

図書館のような、本の貸し出しは行っていません。施設内で読むか、もしくは購入することはできます。会員の場合、割引価格で本を購入することが可能です。

無線LAN、電源のあるカフェ ☕️

http://www.academyhills.com/library/roppongi/tqe2it00000kfa6h-img/tqe2it00000kfaf8.jpg

カフェスペースがあります。ここでは、飲食や会話、電話もOKです。
打ち合わせ風な会話をしている人、読書している人、昼寝している人など、たくさんの人がいます。
カフェでは、コーヒー以外にも、ジュースや軽食も販売しています。また、飲み物、食べ物の持ち込みも可能です。

Google マップで、施設内部が公開されているので、気になる人は見てみてください。

Google マップ

六本木ヒルズ49Fからの景色が良い!👫

六本木ヒルズの49階にあるため、景色がとても綺麗です。
カフェからは、東京タワー、スカイツリー、レインボーブリッジ、東京湾などを見ることができます。

また、ワークスペースからは、まだ別の方角を見ることができます。昼も夜もそれぞれ違った景色が見れるところも良いです。

ワークスペース(自習室)がたくさんある✏️

http://www.academyhills.com/library/roppongi/tqe2it00000kfa6h-img/tqe2it00000kfagm.jpg

自習室としての部屋が複数あります。自習室は、食べ物の持ち込みが禁止ですが、飲み物は持ち込みOKです。窓側の席に座れば綺麗な景色も見えます。

部屋によっては、PCなどの電子機器が持ち込みNGの部屋もあるので、タイピングの音すらもシャットアウトしたい場合にはオススメです。

基本的に自習室内は静かなので、集中するには最高の環境であり、私がアカデミーヒルズをオススメする一番の理由です。

 

こちらも、施設内部が見たければ、以下のGoogleマップリンクから見てみてください。

Google マップ

設備も充実🖨

無線LAN、電源、延長コード、コピー機、携帯電話の充電機などがあります。喫煙室もあります。

無線LANは二種類あり、一つは暗号化無しのオープンな回線で、もう一つは、暗号化されたセキュアな回線となっています。パスワードは半年に一度変更されるため、ある日突然接続できなくなります。パスワードが変わったら、フロントの人に教えてもらいに行く必要があります。

ちなみに、無線LANの速度ですが、基本的には、十分な速度が出ていると思いますが、利用状況と場所によっては、かなり遅くなる場合があります。kbpsのレベルまで落ちる場合もあり、この点はストレスを感じる場合があります。

頻繁にイベントがある✨

施設内では、様々な種類の講演や、会員のコミュニティによるイベントを頻繁にやっています。

会員同士で集まって開催しているイベントには、本好きの集まる会や、旅行研究会、英語で討論する会など様々なものがあります。こういったイベントを通して、趣味嗜好の合う人とも知り合うことができるかもしれませんね。

以下からイベント予定を見ることができます。(2017年4月のイベント予定)

イベント予定 2017年 アカデミーヒルズ

六本木なのでアクセスは良い🚗

六本木ヒルズ内にある施設なので、最寄駅は六本木駅となります。
大江戸線六本木駅からだと、多少歩きますが、日比谷線六本木駅からなら直結です。

料金は月会費が9000円💰

会員制となっており、会員種別によって、料金と利用できる施設の内容などが異なっています。

コミュニティメンバー

アカデミーヒルズの会員のうち、ほとんどの人は、こちらの会員種別だと思います。私もコミュニティメンバーとして利用しています。

コミュニティメンバーの会費は、月9,000円(税別)です。また、初回事務手数料は5,000円です。個人的な感覚としては、利用している内容から考えると、月9,000円は安い!と感じています。

www.academyhills.com

オフィスメンバー

こちらは、利用可能な施設の内容や利用可能な時間など、サービスの内容がコミュニティメンバーとは異なるようです。オフィスメンバーでないと、進入することができないエリアがあります。

料金も月会費90,000円、入会金300,000円とお高くなっております。

朝は早くから、夜は遅くまで営業している🏢

朝7:00 - 夜24:00(最終入館23:00)と、朝早くから夜遅くまでやっていてとってもありがたいです。(オフィスメンバーなら24時間365日利用できるようですが)

確か年末年始くらいは、営業時間が短くなりますが、それ以外はほぼ上記のとおりだったと思います。

 

以上になります。

 

集中して勉強、作業、読書などをするための環境を探している人には、とても良い場所だと思います。

ぜひ利用を検討してみてください。

www.academyhills.com

macOS Sierra に64bit版のsqlplus 12.1 をインストールしてOracleへ接続する

やること

macOS sierra に、64bit版のsqlplus 12.1 をインストールして、Oracle DBへ接続するためのクライアント環境を作成します。 sqlplusは、Oracleのサイトから無償で入手可能です。

環境情報

端末は以下の通り。

項目 内容
端末 MacBook (Retina, 12-inch, Early 2016)
OS macOS sierra Version 10.12

sqlplusインストール手順

Oracle Instanct Client をダウンロードする

  1. ウェブブラウザで、以下のOracleのウェブサイトを開きます。

    Instant Client downloads for Mac OS X (Intel x86)

  2. 64bit版の以下の4つのファイルをダウンロードします。

    • instantclient-basic-macos.x64-12.1.0.2.0.zip
    • instantclient-jdbc-macos.x64-12.1.0.2.0.zip
    • instantclient-sqlplus-macos.x64-12.1.0.2.0.zip
    • instantclient-sdk-macos.x64-12.1.0.2.0.zip

    f:id:mitsu3204:20170401164746p:plain

Instant Client を展開する

  1. sqlplusを配置するためのディレクトリを作成します。 ここでは、ホームディレクトリの直下にsqlplusというディレクトリを作成します。好みに合わせて変更してください。

     mkdir ~/sqlplus
    
  2. ダウンロードしたInstinct Client の各zipファイルを、先ほど作成したsqlplusディレクトリ内へ、展開します。

     $ mkdir ~/sqlplus
     $ unzip Downloads/instantclient-basic-macos.x64-12.1.0.2.0.zip -d ./sqlplus/
     $ unzip Downloads/instantclient-jdbc-macos.x64-12.1.0.2.0.zip -d ./sqlplus/
     $ unzip Downloads/instantclient-sqlplus-macos.x64-12.1.0.2.0.zip -d ./sqlplus/
     $ unzip Downloads/instantclient-sdk-macos.x64-12.1.0.2.0.zip -d ./sqlplus/
    

sqlplusを使用するための環境変数を設定する

  1. ~/.bashrcに以下の記述を追加します。

     export ORACLE_HOME=~/sqlplus/instantclient_12_1
     export PATH=$ORACLE_HOME:$PATH
     export DYLD_LIBRARY_PATH=~/sqlplus/instantclient_12_1
    
  2. .bashrcを更新したら、環境変数を有効にしましょう。

     . ~/.bashrc
    

sqlplusを起動する

  1. 最後に、sqlplusが起動するか確認してみましょう。ターミナルでsqlplusコマンドを実行します。

     $ sqlplus
    
     SQL*Plus: Release 12.1.0.2.0 Production on Sat Apr 1 16:33:12 2017
    
     Copyright (c) 1982, 2016, Oracle.  All rights reserved.
    
     Enter user-name:
    

sqlplusが起動できれば、完了です。

sqlplusからOracleへの接続方法

sqlplusに認証情報をつけてダイレクトにDBに接続することもできますが、historyに認証情報を記録させないように、/nolog(ノーログイン)をつけて起動しています。 sqlplus起動後は、conn ユーザー/パスワード@接続先ホスト:ポート番号/データベース名でDBへ接続します。

$ sqlplus /nolog

SQL*Plus: Release 12.1.0.2.0 Production on Sat Apr 1 16:52:59 2017

Copyright (c) 1982, 2016, Oracle.  All rights reserved.

SQL> conn <user>/<password>@host:port/dbname

以上

ウェブサイトを電子書籍化してKindleで読む

ウェブサイトだってKindleで読みたい

Webサイトを見ていると、後でじっくり読みたい場合や、長文でWebブラウザだとちょっと読みにくい場合などがあります。Kindle所有者としては、文章が読み易いKindleで読みたいと思ってしまいます。


そんな時に、Push to Kindle というWebサービスを使用して、Webページを電子書籍化して電子書籍端末で読む方法を紹介します。

fivefilters.org

 

そもそも、KindleにはAmazonが提供するSend to Kindle という機能があり、この機能を使用すると、コンテンツを指定したKindle端末にプッシュすることができます。

Kindleアプリがインストールされたスマートフォンにもプッシュ可能です

Push to Kindle は、このSend to Kindle を使用してWebサイトをKindleへプッシュします。

ウェブサイトを電子書籍化してKindleへ保管する手順

Webサイトを電子書籍化して、Kindleへ保管するのは、とても簡単です。

今回はGoogle Chromeを使った場合の手順を紹介します。

事前準備

最初に一度だけ、事前準備をする必要があります。

  1. Push to KindleChromeにインストールする
    Push to Kindleは、Chrome拡張として無料でインストールすることができます。Chrome ウェブストアから、Push to Kindleをインストールします。

    f:id:mitsu3204:20170329005145p:plain

  2. Send-to-Kindle Eメールアドレスの確認

     Push to Kindleは、Send-to-Kindleの機能を利用します。コンテンツを登録したい端末のSend-to-Kindle Eメールアドレスを確認しておきましょう。

    f:id:mitsu3204:20170329005340j:plain

  3. Send-to-Kindleを利用するための承認済みEメールアドレスの確認
    Send-to-Kindleを利用するためには、コンテンツの送信元メールアドレスが承認済みである必要があります。よって、この承認済みメールアドレスを、Push to Kindle使用時に入力するため、確認しておきます。

    先ほどの「コンテンツと端末の管理」画面の設定タブを開きます。
    f:id:mitsu3204:20170329005643p:plain

    画面をスクロールして、以下の承認済みメールアドレス一覧に表示されているアドレスを確認しておきます。f:id:mitsu3204:20170329005713p:plain

    以上で、事前準備は完了です。

電子書籍化してKindleに保管する手順

では、実際にWebサイトを電子書籍化して、Kindleに保管する手順を記載します。

  1. Kindleで読みたいWebサイトをChromeで開き、ブラウザの右上にあるPush to Kindleのアイコン(本の絵になってます)をクリックします。

    f:id:mitsu3204:20170329012845p:plain

  2. Push to Kindleのページが表示されるので、以下の通りに入力します。
    ・Send to: コンテンツの保管先となるKindle端末のSend-to-Kindle Eメールアドレス
    ・Send from: 承認済みのメールアドレス
    ・Remember me?: チェック状態にしておくと、入力内容が記憶され、次回から入力が不要になります。

    f:id:mitsu3204:20170329012914p:plain

  3. 入力が完了したら、Send!ボタンをクリックして、Kindle端末にコンテンツをプッシュします。
    Kindle側でコンテンツのダウンロードが完了すれば、完了です。
    f:id:mitsu3204:20170329014456j:plain

以上になります。

 

今回はパソコンのChromeからの操作方法を紹介しましたが、Push to Kindleは、Fire Fox、Safariなどの他のブラウザから利用することもできますし、Androidアプリも無料で公開されているようです。