Enviar pesquisa
Carregar
Rubyで始めるWebスクレイピング
•
101 gostaram
•
34,749 visualizações
Takuro Sasaki
Seguir
Rubyで始めるWebスクレイピング 第1回Webスクレイピング勉強会@東京 発表資料
Leia menos
Leia mais
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 24
Baixar agora
Baixar para ler offline
Recomendados
JAWSUG architecture-crowler
JAWSUG architecture-crowler
Takuro Sasaki
Rubyで作るクローラー Ruby crawler
Rubyで作るクローラー Ruby crawler
Takuro Sasaki
Capybaraで雑にWebスクレイピング
Capybaraで雑にWebスクレイピング
Koji Nakamura
Rubyによるクローラー開発
Rubyによるクローラー開発
しくみ製作所
Anemoneによるクローラー入門
Anemoneによるクローラー入門
Tasuku Nakano
Scraping withawsAWSを利用してスクレイピングの悩みを解決するチップス
Scraping withawsAWSを利用してスクレイピングの悩みを解決するチップス
Takuro Sasaki
Innovation eggcloudnative
Innovation eggcloudnative
Takuro Sasaki
Rubyで操るAWS 第67回Ruby関西 勉強会
Rubyで操るAWS 第67回Ruby関西 勉強会
Takuro Sasaki
Recomendados
JAWSUG architecture-crowler
JAWSUG architecture-crowler
Takuro Sasaki
Rubyで作るクローラー Ruby crawler
Rubyで作るクローラー Ruby crawler
Takuro Sasaki
Capybaraで雑にWebスクレイピング
Capybaraで雑にWebスクレイピング
Koji Nakamura
Rubyによるクローラー開発
Rubyによるクローラー開発
しくみ製作所
Anemoneによるクローラー入門
Anemoneによるクローラー入門
Tasuku Nakano
Scraping withawsAWSを利用してスクレイピングの悩みを解決するチップス
Scraping withawsAWSを利用してスクレイピングの悩みを解決するチップス
Takuro Sasaki
Innovation eggcloudnative
Innovation eggcloudnative
Takuro Sasaki
Rubyで操るAWS 第67回Ruby関西 勉強会
Rubyで操るAWS 第67回Ruby関西 勉強会
Takuro Sasaki
Reactjs
Reactjs
しくみ製作所
JAWS-UG初心者支部 AWS書籍活用術
JAWS-UG初心者支部 AWS書籍活用術
Takuro Sasaki
Crawler Commons
Crawler Commons
chibochibo
JAWSUG Osaka S3 CloudSearch
JAWSUG Osaka S3 CloudSearch
Takuro Sasaki
「新しい」を生み出すためのWebアプリ開発とその周辺
「新しい」を生み出すためのWebアプリ開発とその周辺
Yusuke Wada
20150207 elastic loadbalancer
20150207 elastic loadbalancer
Daiki Mori
Node.jsとAWS入門(Elastic Beanstalk & AWS SDK for Node.js)
Node.jsとAWS入門(Elastic Beanstalk & AWS SDK for Node.js)
崇之 清水
jQueryを中心としたJavaScript
jQueryを中心としたJavaScript
hideaki honda
20150207 サービス紹介編 Amazon Simple Queue Service (SQS)
20150207 サービス紹介編 Amazon Simple Queue Service (SQS)
Koichiro Nishijima
Node.jsに縁のない職場でnode.jsを使い始める戦術
Node.jsに縁のない職場でnode.jsを使い始める戦術
Isamu Suzuki
DevLove Kansai AWS
DevLove Kansai AWS
Takuro Sasaki
Node.jsで始める Modern JavaScript Framework
Node.jsで始める Modern JavaScript Framework
kamiyam .
Node.jsではじめるサーバ構築
Node.jsではじめるサーバ構築
AimingStudy
JAWSUG初心者支部 AWSの勉強の仕方
JAWSUG初心者支部 AWSの勉強の仕方
Takuro Sasaki
Jawsug osaka10 service®ions
Jawsug osaka10 service®ions
Takuro Sasaki
Node js 入門
Node js 入門
Satoshi Takami
Jaws ug shimane-1
Jaws ug shimane-1
Mutsumi IWAISHI
Node.js で Web アプリ開発
Node.js で Web アプリ開発
Tatsumi Naganuma
Hello, Node.js
Hello, Node.js
Shin Sekaryo
MySQL Fabricつらい
MySQL Fabricつらい
yoku0825
ScrapyとPhantomJSを用いたスクレイピングDSL
ScrapyとPhantomJSを用いたスクレイピングDSL
Masayuki Isobe
CasperJSを使って任意のWebサイトを電子書籍化する方法
CasperJSを使って任意のWebサイトを電子書籍化する方法
Masayuki Isobe
Mais conteúdo relacionado
Mais procurados
Reactjs
Reactjs
しくみ製作所
JAWS-UG初心者支部 AWS書籍活用術
JAWS-UG初心者支部 AWS書籍活用術
Takuro Sasaki
Crawler Commons
Crawler Commons
chibochibo
JAWSUG Osaka S3 CloudSearch
JAWSUG Osaka S3 CloudSearch
Takuro Sasaki
「新しい」を生み出すためのWebアプリ開発とその周辺
「新しい」を生み出すためのWebアプリ開発とその周辺
Yusuke Wada
20150207 elastic loadbalancer
20150207 elastic loadbalancer
Daiki Mori
Node.jsとAWS入門(Elastic Beanstalk & AWS SDK for Node.js)
Node.jsとAWS入門(Elastic Beanstalk & AWS SDK for Node.js)
崇之 清水
jQueryを中心としたJavaScript
jQueryを中心としたJavaScript
hideaki honda
20150207 サービス紹介編 Amazon Simple Queue Service (SQS)
20150207 サービス紹介編 Amazon Simple Queue Service (SQS)
Koichiro Nishijima
Node.jsに縁のない職場でnode.jsを使い始める戦術
Node.jsに縁のない職場でnode.jsを使い始める戦術
Isamu Suzuki
DevLove Kansai AWS
DevLove Kansai AWS
Takuro Sasaki
Node.jsで始める Modern JavaScript Framework
Node.jsで始める Modern JavaScript Framework
kamiyam .
Node.jsではじめるサーバ構築
Node.jsではじめるサーバ構築
AimingStudy
JAWSUG初心者支部 AWSの勉強の仕方
JAWSUG初心者支部 AWSの勉強の仕方
Takuro Sasaki
Jawsug osaka10 service®ions
Jawsug osaka10 service®ions
Takuro Sasaki
Node js 入門
Node js 入門
Satoshi Takami
Jaws ug shimane-1
Jaws ug shimane-1
Mutsumi IWAISHI
Node.js で Web アプリ開発
Node.js で Web アプリ開発
Tatsumi Naganuma
Hello, Node.js
Hello, Node.js
Shin Sekaryo
MySQL Fabricつらい
MySQL Fabricつらい
yoku0825
Mais procurados
(20)
Reactjs
Reactjs
JAWS-UG初心者支部 AWS書籍活用術
JAWS-UG初心者支部 AWS書籍活用術
Crawler Commons
Crawler Commons
JAWSUG Osaka S3 CloudSearch
JAWSUG Osaka S3 CloudSearch
「新しい」を生み出すためのWebアプリ開発とその周辺
「新しい」を生み出すためのWebアプリ開発とその周辺
20150207 elastic loadbalancer
20150207 elastic loadbalancer
Node.jsとAWS入門(Elastic Beanstalk & AWS SDK for Node.js)
Node.jsとAWS入門(Elastic Beanstalk & AWS SDK for Node.js)
jQueryを中心としたJavaScript
jQueryを中心としたJavaScript
20150207 サービス紹介編 Amazon Simple Queue Service (SQS)
20150207 サービス紹介編 Amazon Simple Queue Service (SQS)
Node.jsに縁のない職場でnode.jsを使い始める戦術
Node.jsに縁のない職場でnode.jsを使い始める戦術
DevLove Kansai AWS
DevLove Kansai AWS
Node.jsで始める Modern JavaScript Framework
Node.jsで始める Modern JavaScript Framework
Node.jsではじめるサーバ構築
Node.jsではじめるサーバ構築
JAWSUG初心者支部 AWSの勉強の仕方
JAWSUG初心者支部 AWSの勉強の仕方
Jawsug osaka10 service®ions
Jawsug osaka10 service®ions
Node js 入門
Node js 入門
Jaws ug shimane-1
Jaws ug shimane-1
Node.js で Web アプリ開発
Node.js で Web アプリ開発
Hello, Node.js
Hello, Node.js
MySQL Fabricつらい
MySQL Fabricつらい
Destaque
ScrapyとPhantomJSを用いたスクレイピングDSL
ScrapyとPhantomJSを用いたスクレイピングDSL
Masayuki Isobe
CasperJSを使って任意のWebサイトを電子書籍化する方法
CasperJSを使って任意のWebサイトを電子書籍化する方法
Masayuki Isobe
オープンデータのためのスクレイピング
オープンデータのためのスクレイピング
直之 伊藤
Crawler for Non engineer
Crawler for Non engineer
Takuro Sasaki
20141022 リサーチ向け・ブラウザだけでスクレイピング(浅野)
20141022 リサーチ向け・ブラウザだけでスクレイピング(浅野)
Hirosuke Asano
クローリングしにくいものに挑戦 公開用
クローリングしにくいものに挑戦 公開用
Lumin Hacker
続Pythonによるwebスクレイピング入門
続Pythonによるwebスクレイピング入門
Hironori Sekine
Destaque
(7)
ScrapyとPhantomJSを用いたスクレイピングDSL
ScrapyとPhantomJSを用いたスクレイピングDSL
CasperJSを使って任意のWebサイトを電子書籍化する方法
CasperJSを使って任意のWebサイトを電子書籍化する方法
オープンデータのためのスクレイピング
オープンデータのためのスクレイピング
Crawler for Non engineer
Crawler for Non engineer
20141022 リサーチ向け・ブラウザだけでスクレイピング(浅野)
20141022 リサーチ向け・ブラウザだけでスクレイピング(浅野)
クローリングしにくいものに挑戦 公開用
クローリングしにくいものに挑戦 公開用
続Pythonによるwebスクレイピング入門
続Pythonによるwebスクレイピング入門
Semelhante a Rubyで始めるWebスクレイピング
capybara で快適なテスト生活を
capybara で快適なテスト生活を
Ryunosuke SATO
Mojoliciousでつくる! Webアプリ入門
Mojoliciousでつくる! Webアプリ入門
Yusuke Wada
JasmineによるJavascriptテスト駆動開発
JasmineによるJavascriptテスト駆動開発
Yoichi Toyota
【Camphor ×サイボウズ】selenium勉強会
【Camphor ×サイボウズ】selenium勉強会
Yuki Okada
Web制作勉強会 #2
Web制作勉強会 #2
Moto Yan
Javaな人が気を付けるべきJavaScriptコーディングスタイル
Javaな人が気を付けるべきJavaScriptコーディングスタイル
Maaya Ishida
はじめよう Backbone.js
はじめよう Backbone.js
Hiroki Toyokawa
第1回名古屋Android勉強会Lt用資料
第1回名古屋Android勉強会Lt用資料
tantack
2016/12/17 ASP.NET フロントエンドタスク入門
2016/12/17 ASP.NET フロントエンドタスク入門
miso- soup3
【テックリンク】平日の夜1時間で学ぶ!RubyonRails初心者ハンズオン
【テックリンク】平日の夜1時間で学ぶ!RubyonRails初心者ハンズオン
linkbal
「Webサービスのつくり方」 のつくり方
「Webサービスのつくり方」 のつくり方
Yusuke Wada
SwaggerとAPIのデザイン
SwaggerとAPIのデザイン
Kazuhiro Hara
実戦Scala
実戦Scala
Yuto Suzuki
Skinny Framework で始めた Scala
Skinny Framework で始めた Scala
Ryuji Yamashita
いるけどないからつくってみたよ高速モバイルプッシュ配信くん #cmdevio
いるけどないからつくってみたよ高速モバイルプッシュ配信くん #cmdevio
fd0
Juzu Frameworkを使ってみた @第四回 渋谷java
Juzu Frameworkを使ってみた @第四回 渋谷java
Kazuhiro Serizawa
AWS Lambdaで作るクローラー/スクレイピング
AWS Lambdaで作るクローラー/スクレイピング
Takuro Sasaki
HerokuでRails3.2 we love herokuの事例
HerokuでRails3.2 we love herokuの事例
Naoto Koshikawa
Nodeにしましょう
Nodeにしましょう
Yuzo Hebishima
Railsのフロントエンド開発を考える
Railsのフロントエンド開発を考える
Hirata Tomoko
Semelhante a Rubyで始めるWebスクレイピング
(20)
capybara で快適なテスト生活を
capybara で快適なテスト生活を
Mojoliciousでつくる! Webアプリ入門
Mojoliciousでつくる! Webアプリ入門
JasmineによるJavascriptテスト駆動開発
JasmineによるJavascriptテスト駆動開発
【Camphor ×サイボウズ】selenium勉強会
【Camphor ×サイボウズ】selenium勉強会
Web制作勉強会 #2
Web制作勉強会 #2
Javaな人が気を付けるべきJavaScriptコーディングスタイル
Javaな人が気を付けるべきJavaScriptコーディングスタイル
はじめよう Backbone.js
はじめよう Backbone.js
第1回名古屋Android勉強会Lt用資料
第1回名古屋Android勉強会Lt用資料
2016/12/17 ASP.NET フロントエンドタスク入門
2016/12/17 ASP.NET フロントエンドタスク入門
【テックリンク】平日の夜1時間で学ぶ!RubyonRails初心者ハンズオン
【テックリンク】平日の夜1時間で学ぶ!RubyonRails初心者ハンズオン
「Webサービスのつくり方」 のつくり方
「Webサービスのつくり方」 のつくり方
SwaggerとAPIのデザイン
SwaggerとAPIのデザイン
実戦Scala
実戦Scala
Skinny Framework で始めた Scala
Skinny Framework で始めた Scala
いるけどないからつくってみたよ高速モバイルプッシュ配信くん #cmdevio
いるけどないからつくってみたよ高速モバイルプッシュ配信くん #cmdevio
Juzu Frameworkを使ってみた @第四回 渋谷java
Juzu Frameworkを使ってみた @第四回 渋谷java
AWS Lambdaで作るクローラー/スクレイピング
AWS Lambdaで作るクローラー/スクレイピング
HerokuでRails3.2 we love herokuの事例
HerokuでRails3.2 we love herokuの事例
Nodeにしましょう
Nodeにしましょう
Railsのフロントエンド開発を考える
Railsのフロントエンド開発を考える
Mais de Takuro Sasaki
Lambda認証認可パターン
Lambda認証認可パターン
Takuro Sasaki
Swaggerで始めるモデルファーストなAPI開発
Swaggerで始めるモデルファーストなAPI開発
Takuro Sasaki
Jawsug chiba API Gateway
Jawsug chiba API Gateway
Takuro Sasaki
JAWSUG Kansai Simple Workflow Service (SWF)
JAWSUG Kansai Simple Workflow Service (SWF)
Takuro Sasaki
サイト/ブログから本文抽出する方法
サイト/ブログから本文抽出する方法
Takuro Sasaki
JAWS-UG三都物語2014 初心者向け Elasticity ELB/AutoScaling/EIP
JAWS-UG三都物語2014 初心者向け Elasticity ELB/AutoScaling/EIP
Takuro Sasaki
第9回Jawsug大阪 ServiceProviders 現場で使えるAWS付随サービス!!
第9回Jawsug大阪 ServiceProviders 現場で使えるAWS付随サービス!!
Takuro Sasaki
第2回 JAWS−UG 神戸 開発運用の現場でのChef活用
第2回 JAWS−UG 神戸 開発運用の現場でのChef活用
Takuro Sasaki
第8回JAWSUG大阪 JAWSUG大阪 連携サービス(SNS,SQS,SES)
第8回JAWSUG大阪 JAWSUG大阪 連携サービス(SNS,SQS,SES)
Takuro Sasaki
第8回JAWSUG大阪 AWSの事例/課金について
第8回JAWSUG大阪 AWSの事例/課金について
Takuro Sasaki
開発環境としてのAwsを真面目に考える jawsug2013三都物語公開用
開発環境としてのAwsを真面目に考える jawsug2013三都物語公開用
Takuro Sasaki
Mais de Takuro Sasaki
(11)
Lambda認証認可パターン
Lambda認証認可パターン
Swaggerで始めるモデルファーストなAPI開発
Swaggerで始めるモデルファーストなAPI開発
Jawsug chiba API Gateway
Jawsug chiba API Gateway
JAWSUG Kansai Simple Workflow Service (SWF)
JAWSUG Kansai Simple Workflow Service (SWF)
サイト/ブログから本文抽出する方法
サイト/ブログから本文抽出する方法
JAWS-UG三都物語2014 初心者向け Elasticity ELB/AutoScaling/EIP
JAWS-UG三都物語2014 初心者向け Elasticity ELB/AutoScaling/EIP
第9回Jawsug大阪 ServiceProviders 現場で使えるAWS付随サービス!!
第9回Jawsug大阪 ServiceProviders 現場で使えるAWS付随サービス!!
第2回 JAWS−UG 神戸 開発運用の現場でのChef活用
第2回 JAWS−UG 神戸 開発運用の現場でのChef活用
第8回JAWSUG大阪 JAWSUG大阪 連携サービス(SNS,SQS,SES)
第8回JAWSUG大阪 JAWSUG大阪 連携サービス(SNS,SQS,SES)
第8回JAWSUG大阪 AWSの事例/課金について
第8回JAWSUG大阪 AWSの事例/課金について
開発環境としてのAwsを真面目に考える jawsug2013三都物語公開用
開発環境としてのAwsを真面目に考える jawsug2013三都物語公開用
Último
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
akihisamiyanaga1
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
Yuki Kikuchi
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
UEHARA, Tetsutaro
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
FumieNakayama
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
sugiuralab
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Hiroshi Tomioka
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
博三 太田
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
FumieNakayama
Último
(9)
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
Rubyで始めるWebスクレイピング
1.
第1回Webスクレイピング勉強会@東京 ! Rubyで始める
Webスクレイピング 2014年6月22日 @dkfj 佐々木拓郎
2.
今日は大阪から来ました
3.
今日は大阪から来ました
4.
✦ プロフィール ‣
Webシステムを得意とするSIerで勤務 ‣ 最近の仕事はAWS事業の推進・インフラチームのマネジメント ‣ Webスクレイピングして、データマイニングするのが趣味 ★ ソーシャル・ネットワーク ‣ blog: http://blog.takuros.net/ ‣ twitter: @dkfj ‣ Facebook: takuro.sasaki ‣ SlideShare: http://www.slideshare.net/takurosasaki/ @dkfj 自己紹介: 佐々木拓郎
5.
宣伝!! Rubyのクローラー本を書いています。 8月頃に発売予定です。しました。
Rubyによるクローラー開発技法 巡回・解析機能の実装と21の運用例 http://amzn.to/1lsJ5id
6.
Rubyで Webスクレイピングするには?
7.
RubyでWebスクレイピング • Open-URI
• Nokogiri • Anemone • Capybara+Selenium • cosmiccrawler • CocProxy
8.
RubyでWebスクレイピング • Open-URI
• Nokogiri • Anemone • Capybara+Selenium • cosmiccrawler • CocProxy 基本的なライブラリ クローラー フレームワーク 補助的なライブラリ
9.
Open-URI • http/ftpに簡単にアクセスするためのライブラリ
• Kernel#openを再定義 • ファイルのopenと同様に、URLを扱える require 'open-uri' open("http://www.ruby-lang.org/") {|f| f.each_line {|line| p line} }
10.
• HTML/XMLの構文解析器(パーサー) •
ほぼデファクトスタンダード • XPath or CSSセレクタで、HTML中の要素を選択 • UTF-8以外の文字コードを扱う場合は注意 require 'nokogiri' require 'open-uri' ! doc = Nokogiri.HTML(open("http://nokogiri.org/")) doc.css('a').each do |element| puts element[:href] end 参照:Ruby製の構文解析ツール、Nokogiriの使い方 with Xpath http://blog.takuros.net/entry/2014/04/15/070434
11.
• Ruby製のクローラーフレームワーク •
データ収集/解析/保存の全ての機能がある • 2年ほどメンテナンスされていない • ScrapyのあるPythonがうらやましい今日この頃 require 'anemone' ! Anemone.crawl("http://www.hatena.ne.jp/") do |anemone| anemone.on_every_page do |page| puts page.url puts page.doc.xpath("//head/title/text()").first.to_s if page.doc end end Anemone 参照:オープンソースのRubyのWebクローラー"Anemone"を使ってみる http://blog.takuros.net/entry/20110204/1296781291
12.
Capybara+Selenium • 基本的には、UIテストツール
• ブラウザを使うので、JavaScriptにも対応可能 • スクレイピング部分は、Nokogiriを利用 • CapybaraをラッパーしたMasqueというクローラー • ブラウザ代わりに、PhantomJSを使うのもあり 参照:JavaScriptにも対応出来るruby製のクローラー、Masqueを試してみる http://blog.takuros.net/entry/20131223/1387814711 参照:Capybara-DSLのはなし http://blog.takuros.net/entry/20140322/1395464375
13.
cosmicrawler • 並列処理を得意とするクローラー
• 並列処理の実装は、EventMachine • EventMachineの面倒くさい処理を隠蔽してくれる require 'cosmicrawler' ! Cosmicrawler.http_crawl(%w(http://b.hatena.ne.jp/hotentry/it http:// b.hatena.ne.jp/hotentry/life)) {|request| get = request.get puts get.response if get.response_header.status == 200 } 参照:複数並行可能なRubyのクローラー、「cosmicrawler」を試してみた http://blog.takuros.net/entry/20140103/1388701372
14.
CocProxy • ほぼピュアRubyで実装されたプロキシサーバ
• 開発用途で、クローラー作成時に便利 • 訪問済みのサイトをキャッシュしてくれる • 訪問先サイトに無駄に負荷を掛けずに試行錯誤できる 参照:開発用プロキシ、「CocProxy」が便利 http://blog.takuros.net/entry/2014/05/05/120747
15.
スクレイピングの例
16.
iTunesStoreのランキング • iTunesStoreのランキングの実体はHTML+JSON
• UserAgentを”iTunes”にすればスクレイピング可能 • 国ごとのコードをX-Apple-Store-Frontで指定 • カテゴリIDとランキング種別は、引数で指定 参照:iTunesのランキングを毎日自動で取得する その1 http://blog.takuros.net/entry/20120521/1337549653
17.
APIの活用 • Webスクレイピングの目的は、データの収集
• APIが提供されているのであれば、そちらが効率的 • ただし、APIは制約が多い !
18.
Google Maps APIの活用
• 1IP辺り1日2,500回のリクエスト制限 • 郵便番号(12万件)を、経度緯度に変換したい • 120,000件/2,500回 ⇒ 48日 • AWSを利用して50台のサーバを使い1時間で完了 ! AWSでスポットインスタンスの活用 $0.0031×50台≒約16円
19.
20.
Twitter Streaming API
• 全Tweetのうち、数%だけに絞って提供されている • それでも1日100万件近い分量 • 日本語のみ取り出すことも可能 ! 参照:Rubyのtwitterライブラリで、Twitter Streaming APIが扱えるようになっていた http://blog.takuros.net/entry/2014/05/19/002326
21.
22.
23.
引越にも • 参加表明後に、突然の異動の辞令
• 7月から東京勤務 • 相場観がないので、賃貸サイトをスクレイピング • 数十万件のデータから、駅ごとの㎡辺り単価の算出 ! GeoFUSEで視覚化しようとしたが 時間がなくて断念
24.
ご清聴ありがとうございました 後日の質問は、@dkfjまで
Baixar agora