Python 3 エンジニア認定実践試験対策14. インターネット上のデータを扱う

投稿日:

更新日:

カテゴリ:

Pythonのインターネット上のデータを扱うについてです。

URLやHTTP通信、base64、emailの内容ですが、Requestsとemailは対象外になりますのでご注意ください。

要点

テキストの「14 インターネット上のデータを扱う」の内容について、自分なりにまとめた要点は以下です。
試験対象となるのは右半分です。ご参考になれば嬉しいです。

テキストの補足と訂正

  1. P331 14.3で紹介されたHTTPリクエストRequestsについて、インストールが必要的な記載はありませんでしたが、以下のようにインストールは必要のはずです。
    pip install requests
  2. P337にb64encodeについて以下のような説明があります。

    altchars引数を指定せずにURLで安全に利用可能なエンコード文字列を返す関数として、urlsafe_b64encode() があります。url_safe_b64encode()関数では「+」の代わりに「-」を仕様し、「/」の代わりに「_」が利用されます。

    自分の環境で確認したところ、ここで紹介された後者のurl_safe_b64encode()関数はurlの後ろにアンダースコアが一つ多く、誤りであり、urlsafe_b64encode()が正しいようです。

余談

  1. ParseResultの属性には、netlocとhostnameがありますが、netlocはベーシック認証のユーザパスワードやホスト名、ポート全部合わせたものになりますが、hostnameはいわゆるFQDNにあたるところになります。
  2. ParseResultの属性にもうひとつ気になるところとして、paramsというものがあり、値はURL引数(「;」以降の文字列)になります。セミコロンがURLに入れられているところを見たことありませんでした。。paramsと言ったら、GETならquery、POSTならbody的なものだと思いましたが、パスの後ろに「;」で区切るとは。。

 


投稿日

カテゴリー:

投稿者:

コメント

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です