Entries from 2018-06-01 to 1 month

Section 10 Improve design using flask-bootstrap

init.pyの設定をする。 次にレイアウトの設定をする。{% block head %}で囲む。 Googleフォントで自由にフォンとを選べる。 cssなどはここでリンク設定をしておく。 実際にcss.styleはこのようになっている。 {% block head %}の次は {% block body %}の設定…

Section 15 Scrapy Arguments

カテゴリー検索を可能にする方法 カテゴリーを決める→ターミナルでそのカテゴリのURL入力→実行 Arguments の設定方法 ①start_urlを変更して以下のdefを作るだけ。 def __init__(self, category): self.start_urls = [category] ②ターミナルで以下を入力 $ sc…

Section 14 Grabbing URLs (Book Store)

Seleniumじゃない方法でスクレイピングをやる。 概要 titleとurlを取得→次のページに行く→各ページのデータ収集 各タイトルのURLを取得する。 最初にstartURLを設定する start_urls = ['http://books.toscrape.com'] titleに付いているURLを確認する。 <a href="catalogue/a-light-in-the-attic_1000/index.html" title="A Light in the Attic">A Lig</a>…

Section 12 Building Web Crawler with Scrapy

本屋のECサイトをスクレイピングする。 プロジェクト環境を整える。 コードは以下の通り $ scrapy startproject books_crawler $ cd books_crawler $ scrapy genspider books books.toscrape.com/ books.pyのURLを変更する。wwwは取り除くことが注意ポイント…

Section 10 Logging into Websites Using Scrapy

プロジェクトを始める setting.pyのobeyをfalseに変更する。 login.pyのurlをhttp://quotes.toscrape.com/loginに変更する $ scrapy crawl loginを実行してみると networkを押して、 all を選択する post requestを使っているということがわかる。 tokenを取…

Section 9, Deploying Scrapy Spider to ScrapingHub

scrapinghubの使い方 ダッシュボードにプロジェクトフォルダーを作る。 次にターミナルからログインしてスパイダーをウップロードする Runボタンを押して動かすだけ。 Jobが終了するとcomplete jobに入る。 csvなどでダウンロードすることなども可能 Periodi…

Section6 Scrapy Advanced Spider

環境設定をする。 $ scrapy startproject test_quotes $ scrapy genspider test_quotes http://quotes.toscrape.com/ shellで準備をする。 scrapy shellを使って動作確認をする。 response.xpath('//[@class="quote"]') でとれる確認する 次にquotes = respo…

Using XPath with Scrapy Section 4

XPathの使い方 始める方法 $ scrapy shell In [2]: from scrapy.selector import Selector 以下のファイルを読み込ませる。 <html> <head> <title>Title of the page</title> </head> <body> <h1>H1 Tag</h1> <h2>H2 Tag with <a href="#">link</a></h2> <p>First Paragraph</p> <p>Second Paragraph</p> </body> </html> 実際に実行して見る In [10]: sel = …

Xpathの基本

基礎編 XPathではXML文章をツリーとして捉えることで、要素や属性の位置を指定することができます。 『@』表記に関して classのような要素に紐づく属性を『@』で表します。 //を用いて途中までのパスを省略することができる。 /html/body/div/span[@class='r…

Scrapy Simple Spider - Section 3

スクレーピーを設定する。 $ python3 -m venv venv_0512 $ source venv_0512/bin/activate $ cd venv_0512 $ pip install scrapy $ sudo pip install ipython スクレーピーをの状況を確認する。 Yuki$ scrapy Scrapy 1.5.0 - no active project Usage: scrap…