Unified · Split
| @@ -15,9 +15,9 @@ module Docs · 14 unmodified lines | ||
| 15 | 15 | end |
| 16 | 16 | |
| 17 | 17 | def get_type |
| 18 | − if version == 'Guide' and base_url.path.start_with?('/guide') | |
| 18 | + if base_url.path.start_with?('/guide') | |
| 19 | 19 | 'Guides' |
| 20 | − elsif version == 'Guide' and base_url.path.start_with?('/tutorials') | |
| 20 | + elsif base_url.path.start_with?('/tutorials') | |
| 21 | 21 | 'Tutorials' |
| 22 | 22 | elsif slug.start_with?('tf/audio') |
| 23 | 23 | 'tf.audio' |
| @@ -1,10 +1,7 @@ | ||
| 1 | −# frozen_string_literal: true | |
| 2 | − | |
| 3 | 1 | module Docs |
| 4 | 2 | class Tensorflow < UrlScraper |
| 5 | 3 | self.name = 'TensorFlow' |
| 6 | 4 | self.type = 'tensorflow' |
| 7 | − self.release = '2.1' | |
| 8 | 5 | self.root_path = 'index.html' |
| 9 | 6 | self.links = { |
| 10 | 7 | home: 'https://www.tensorflow.org/', |
| @@ -22,17 +19,19 @@ module Docs · 11 unmodified lines | ||
| 22 | 19 | Code samples licensed under the Apache 2.0 License. |
| 23 | 20 | HTML |
| 24 | 21 | |
| 25 | − version 'Python' do | |
| 26 | − self.base_url = 'https://www.tensorflow.org/api_docs/python/' | |
| 22 | + version '2.1' do | |
| 23 | + self.release = '2.1.0' | |
| 24 | + self.base_url = "https://www.tensorflow.org/versions/r#{version}/api_docs/python" | |
| 27 | 25 | end |
| 28 | 26 | |
| 29 | − version 'C++' do | |
| 30 | − self.base_url = 'https://www.tensorflow.org/api_docs/cc/' | |
| 27 | + version '2.0' do | |
| 28 | + self.release = '2.0.0' | |
| 29 | + self.base_url = "https://www.tensorflow.org/versions/r#{version}/api_docs/python" | |
| 31 | 30 | end |
| 32 | 31 | |
| 33 | − version 'Guide' do | |
| 34 | − include MultipleBaseUrls | |
| 35 | − self.base_urls = ['https://www.tensorflow.org/guide/', 'https://www.tensorflow.org/tutorials/'] | |
| 32 | + version '1.15' do | |
| 33 | + self.release = '1.15.0' | |
| 34 | + self.base_url = "https://www.tensorflow.org/versions/r#{version}/api_docs/python" | |
| 36 | 35 | end |
| 37 | 36 | |
| 38 | 37 | def get_latest_version(opts) |
| @@ -42,7 +41,7 @@ module Docs · 3 unmodified lines | ||
| 42 | 41 | private |
| 43 | 42 | |
| 44 | 43 | def parse(response) |
| 45 | − unless response.url == root_url || self.class.version == 'Guide' | |
| 44 | + unless response.url == root_url | |
| 46 | 45 | response.body.sub!(/<nav class="devsite-nav-responsive-sidebar.+?<\/nav>/m, '') |
| 47 | 46 | response.body.gsub!(/<li class="devsite-nav-item">.+?<\/li>/m, '') |
| 48 | 47 | end |
| @@ -0,0 +1,21 @@ | ||
| 1 | +module Docs | |
| 2 | + class TensorflowCpp < Tensorflow | |
| 3 | + self.name = 'TensorFlow C++' | |
| 4 | + self.slug = 'tensorflow_cpp' | |
| 5 | + | |
| 6 | + version '2.1' do | |
| 7 | + self.release = '2.1.0' | |
| 8 | + self.base_url = "https://www.tensorflow.org/versions/r#{version}/api_docs/cc" | |
| 9 | + end | |
| 10 | + | |
| 11 | + version '2.0' do | |
| 12 | + self.release = '2.0.0' | |
| 13 | + self.base_url = "https://www.tensorflow.org/versions/r#{version}/api_docs/cc" | |
| 14 | + end | |
| 15 | + | |
| 16 | + version '1.15' do | |
| 17 | + self.release = '1.15.0' | |
| 18 | + self.base_url = "https://www.tensorflow.org/versions/r#{version}/api_docs/cc" | |
| 19 | + end | |
| 20 | + end | |
| 21 | +end | |
| @@ -0,0 +1,9 @@ | ||
| 1 | +module Docs | |
| 2 | + class TensorflowGuide < Tensorflow | |
| 3 | + include MultipleBaseUrls | |
| 4 | + | |
| 5 | + self.name = 'TensorFlow Guides' | |
| 6 | + self.slug = 'tensorflow_guide' | |
| 7 | + self.base_urls = ['https://www.tensorflow.org/guide/', 'https://www.tensorflow.org/tutorials/'] | |
| 8 | + end | |
| 9 | +end | |
Binary file not shown.
Binary file not shown.
| @@ -0,0 +1 @@ | ||
| 1 | +https://www.tensorflow.org/images/favicon.png | |
Binary file not shown.
Binary file not shown.
| @@ -0,0 +1 @@ | ||
| 1 | +https://www.tensorflow.org/images/favicon.png | |