Skip to content

Commit 75cce72

Browse files
committed
basic scraping for Reference
1 parent 5e973d8 commit 75cce72

File tree

3 files changed

+37
-1
lines changed

3 files changed

+37
-1
lines changed
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
module Docs
2+
class React
3+
class CleanHtmlReactDevFilter < Filter
4+
def call
5+
@doc = at_css('article')
6+
7+
doc
8+
end
9+
end
10+
end
11+
end
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
module Docs
2+
class React
3+
class EntriesReactDevFilter < Docs::EntriesFilter
4+
def get_name
5+
at_css('article h1').content
6+
end
7+
8+
def get_type
9+
return 'TODO add types'
10+
end
11+
end
12+
end
13+
end

lib/docs/scrapers/react.rb

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,19 @@ class React < UrlScraper
77
code: 'https://github.com/facebook/react'
88
}
99

10+
version do
11+
self.release = '18.3.1'
12+
# TODO add /learn
13+
self.base_url = 'https://react.dev/reference'
14+
15+
html_filters.push 'react/entries_react_dev', 'react/clean_html_react_dev'
16+
17+
options[:attribution] = <<-HTML
18+
&copy; 2013&ndash;present Facebook Inc.<br>
19+
Licensed under the Creative Commons Attribution 4.0 International Public License.
20+
HTML
21+
end
22+
1023
version '17' do
1124
self.release = '17.0.2'
1225
self.base_url = 'https://17.reactjs.org/docs/'
@@ -33,7 +46,6 @@ class React < UrlScraper
3346
HTML
3447
end
3548

36-
3749
def get_latest_version(opts)
3850
doc = fetch_doc('https://react.dev/', opts)
3951
doc.at_css('a[href="/versions"]').content.strip[1..-1]

0 commit comments

Comments
 (0)