3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

python3でWebスクレイピングやってみた

Last updated at Posted at 2018-10-09

#Webスクレイピングやってみた
大学でpythonに入門してみたは良いものの、どう使おうか…。
スクレイピング?なにそれ楽しそう。
というわけでスクレイピングしてみました。

ちなみに環境はWindows10 python3.7です。
今回は角川さんから新発売の書籍のタイトルを取得してみました。

import urllib.request, urllib.error
from bs4 import BeautifulSoup

url = "https://www.kadokawa.co.jp/product/search/?lgenre=13&releaseDate=1"
#python2系ではurllib.request(url)
html = urllib.request.urlopen(url)
soup = BeautifulSoup(html, "html.parser")

h2 = soup.find_all("h2")

book_titles = []
for tag in h2:
    try:
        string_ = tag.get("class").pop(0)
        if string_ in "book-title":
            ts = tag.string.replace(' ', ' ')
            book_titles.append(ts)
            #break
    except:
        pass
print(book_titles)
with open('titles.csv', mode='w+',encoding='utf-8') as f:
    for i in book_titles:
        s = f.write('%s,' %i)

作ってみて

角川様のサイトを訪問された方はお気づきかと思いますが、上記のプログラムだと全てのタイトルを取得しきれておりません。
「もっと見る」ボタンをクリックしなければ見られないものがあり、そちらの対応も考えていかない…。
スクリプトでマウスオーバーすることもできるらしいので、きっと出来るはず…。

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?