Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
又一个爬虫
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
medcl
September 24, 2017
Technology
110
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
又一个爬虫
OSC 重庆的放码过来分享环节(闪电分享)。
medcl
September 24, 2017
More Decks by medcl
See All by medcl
Elasticsearch 在智能运维领域的运用
medcl
0
350
Elastic Stack- Past, Present, & Future
medcl
0
77
A Spider Written in Golang
medcl
1
83
Introduction to Beats and extending Beats
medcl
0
110
Elasticsearch & Bigdata
medcl
2
240
Elastic Stack V5
medcl
0
110
Elastic Stack V5
medcl
0
82
基于Elastic Stack的数据探索与分析@QConBeijing2016
medcl
1
450
Introduction to Elasticsearch @ FOSSASIA2016
medcl
0
7.7k
Other Decks in Technology
See All in Technology
あけおめLINE 傾向とその対策
nasa9084
0
190
Azure Serverless 2026:Production-ready な AI エージェント基盤 / Azure Serverless 2026: Production-Ready AI Agent Platform
miyake
2
490
Deployment の 先にある AI Agent 基盤 - kagent vNext、Agent Substrate、Hermes から読み解く Agent Runtime の現在地 / k8s-matsuri-2-ai-agent-platform-amsy810
masayaaoyama
4
700
「どのログを見ればいい?」 から始めた サーバーレス障害解析
y_waka1
1
120
新機種発売前に見直そう!端末移行で再ログインが要るアプリ・要らないアプリは何が違うのか 〜シームレスに再開できる設計と実装〜
zozotech
PRO
0
220
Issue 駆動でスペシャリストの意図を届ける、AI 実装のアクセシビリティ向上
thkt
0
130
AI coding 整合正規方法
philipz
0
440
Railsのように考える: See through the Master
snoozer05
PRO
5
1.2k
C#未経験の僕がAIに読めるコードを書かせるまで
maguroalternative
0
210
Claude in Chrome 入門 / Introduction to Claude in Chrome
cielo1985
0
880
What the customer really needed
kawaguti
PRO
3
220
バイブコーディング時代のWebアプリ開発入門~Cloud Runで学ぶセキュアなビルドとデプロイ
waiwai2111
1
140
Featured
See All Featured
The Mindset for Success: Future Career Progression
greggifford
PRO
0
500
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Code Reviewing Like a Champion
maltzj
528
40k
From π to Pie charts
rasagy
1
370
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
510
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
410
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.4k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
18k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
460
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
200
Side Projects
sachag
456
43k
Transcript
⼜又⼀一个爬⾍虫 曾勇(Medcl)
2 什什么是爬⾍虫 • ⼜又叫 Robot、Bot 或 Crawler • 简单来说 ‒
⾃自动探索⽹网站 ‒ 帮你访问整个站点 ‒ ⾃自动为你收集⽹网站信息 ‒ ⾃自动更更新 ‒ 抽取处理理⽹网⻚页内容 ‒ 存储索引和快照 ‒ 。。。
3 为什什么造这个轮⼦子? 现在已经有很多开源的爬⾍虫了了: Scrapy,Nutch, Heritrix 等等 . [1,2,3] 但是! •
⼤大多仅仅是⼀一个爬⾍虫框架!ES 与 Lucene • 需要熟悉各种与爬取任务本身⽆无关的知识! • 开发和部署的环境复杂,痛苦! • 太重了了! • 分布式、管理理、监控、扩展复杂! • 结果就是⼀一⼤大堆凌乱⽆无法维护的脚本,或是⼀一 ⼤大堆技术拼凑的⼤大杂烩。 1.http://bigdata-madesimple.com/top-50-open-source-web-crawlers-for-data-mining/ 2.https://github.com/BruceDone/awesome-crawler 3.https://gitee.com/explore/starred/spider
4 所以 • 狗爬,Gopa Golang + pá chóng(爬⾍虫) https://gitee.com/medcl/gopa
5 ⽬目标 • 轻量量级,内存占⽤用 < 100MB • 易易于部署,⽆无运⾏行行时和环境依赖 • ⽅方便便使⽤用,⽆无需编程和脚本技能
• 开箱即⽤用 • 提供 RESTful API 和 UI • 简单,可伸缩,可扩展
DEMO
7 Pending Check, Pending Fetch, Pending Index Checker Crawler Pipeline
Framework Database Storage Filter Index Persistence Layer API UI Dispatcher Communication Message Queue Network Internet Dynamic pipeline based on configuration GOPA overview
谢谢! https://gitee.com/medcl/gopa
9 Elastic Integration Overview DISTRIBUTED CRAWLING Elasticsearch Clustering not ready
yet Transform Store ingest node data node Logstash 3rd Applications Optional processing Web Content Kibana Raft
None
None
None
None
None