Scrapyのインストールログ

今日はある方と一緒にScrapyを触ってみました。
下記のブログがある方です。
Scrapyをいじってみた

将棋ウォーズアカウントを流出してしまいました。どちらが勝つか楽しみですw

rubyによるクローラー開発技法」って本を会社で買ったんですが、どうせならPythonでやろうと
思ってScrapyをインストールしてみました。

Rubyによるクローラー開発技法 巡回・解析機能の実装と21の運用例

Rubyによるクローラー開発技法 巡回・解析機能の実装と21の運用例

インストール

pip install scrapy

プロジェクト作成

scrapy startproject tutorial

構成ファイル

tutorial/
    scrapy.cfg
    tutorial/
        __init__.py
        items.py
        pipelines.py
        settings.py
        spiders/
            __init__.py

Itemの定義

vim items.pyの編集

# -*- coding: utf-8 -*-

# Define here the models for your scraped items
#
# See documentation in:
# http://doc.scrapy.org/en/latest/topics/items.html

import scrapy


class DmozItem(scrapy.Item):
    jika = scrapy.Field()

クロール内容

dmoz_spider.pyの編集

import scrapy
from tutorial.items import DmozItem

class DmozSpider(scrapy.Spider):
    name = "stocks"
    allowed_domains = ["stocks.finance.yahoo.co.jp"]
    start_urls = [
        "http://stocks.finance.yahoo.co.jp/stocks/detail/?code=4507.T",
    ]

    def parse(self, response):
        #for sel in response.xpath('//ul/li'):
        item = DmozItem()
        item['jika'] = response.xpath('//*[@id="main"]/div[7]/div[2]/div[2]/div[1]/dl/dd/strong/text()').extract()
        return item

コマンドでクローラーを実行して、jsonで吐き出し

scrapy crawl stocks -o items.json
cat items.json 
[{"jika": ["1,001,440"]}]

塩野義製薬時価総額を抜くことに成功しました。

ある会社のサービスが気になってるんだけど、料金が結構高額でビックリした。
自分で毎日少しずつ作ろうかな思っている。

chrome xpathの取得は初めて知った。ありがとうございます。