History

migrate cpp scraper from filescraper to urlscraper

Enoc committed 5 years ago

Commit e17bc841 parent a754d509 files · +189 −171Browse files

Showing the changes to lib/docs/scrapers/cppref/cpp.rb (1 of 9 files). Show all

Unified · Split

lib/docs/scrapers/cppref/cpp.rb+28−0
@@ -0,0 +1,28 @@
1+module Docs
2+ class Cpp < Cppref
3+ self.name = 'C++'
4+ self.slug = 'cpp'
5+ self.type = 'c'
6+ self.base_url = 'https://en.cppreference.com/w/cpp/'
7+
8+ html_filters.insert_before 'cppref/clean_html', 'cpp/entries'
9+
10+ options[:root_title] = 'C++ Programming Language'
11+
12+ options[:skip] = %w(
13+ language/extending_std.html
14+ language/history.html
15+ regex/ecmascript.html
16+ regex/regex_token_iterator/operator_cmp.html
17+ )
18+
19+ # Same as get_latest_version in lib/docs/scrapers/c.rb
20+ def get_latest_version(opts)
21+ doc = fetch_doc('https://en.cppreference.com/w/Cppreference:Archives', opts)
22+ link = doc.at_css('a[title^="File:"]')
23+ date = link.content.scan(/(\d+)\./)[0][0]
24+ DateTime.strptime(date, '%Y%m%d').to_time.to_i
25+ end
26+
27+ end
28+end