2019年11月5日火曜日

開発環境

退屈なことはPythonにやらせよう ―ノンプログラマーにもできる自動化処理プログラミング (Al Sweigart(著)、相川 愛三(翻訳)、オライリージャパン)の第Ⅱ部(処理の自動化)、11章(Webスクレイピング)、11.9(練習問題)、11-2、3、4、5の解答を求めてみる。

コード

#!/usr/bin/env python3
import requests

print('11-2')

url: str = 'https://example.com'
res = requests.get(url)
print(type(res))

print('11-3')
res.raise_for_status()

print('11-2')
print(res.text[:20])

print('11-4')
print(res.status_code)

print('11-5')

with open('sample1.txt', 'wb') as f:
    for chunk in res.iter_content(100000):
        f.write(chunk)

入出力結果(Zsh、cmd.exe(コマンドプロンプト)、Terminal、Jupyter(IPython))

% ./sample1.py
11-2
<class 'requests.models.Response'>
11-3
11-2
<!doctype html>
<htm
11-4
200
11-5
% head sample1.txt 
<!doctype html>
<html>
<head>
    <title>Example Domain</title>

    <meta charset="utf-8" />
    <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1" />
    <style type="text/css">
    body {
% tail sample1.txt 

<body>
<div>
    <h1>Example Domain</h1>
    <p>This domain is for use in illustrative examples in documents. You may use this
    domain in literature without prior coordination or asking for permission.</p>
    <p><a href="https://www.iana.org/domains/example">More information...</a></p>
</div>
</body>
</html>
%

0 コメント:

コメントを投稿