| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- module Docs
- class Python < FileScraper
- self.type = 'python'
- self.root_path = 'index.html'
- self.links = {
- home: 'https://www.python.org/',
- code: 'https://github.com/python/cpython'
- }
- # bypass the clean_text filter as it removes empty span with ids
- options[:clean_text] = false
- # bypass sphinx modifying empty ids
- options[:sphinx_keep_empty_ids] = true
- options[:skip_patterns] = [/whatsnew/]
- options[:skip] = %w(
- library/2to3.html
- library/formatter.html
- library/intro.html
- library/undoc.html
- library/unittest.mock-examples.html
- library/sunau.html)
- options[:attribution] = <<-HTML
- © 2001–2023 Python Software Foundation<br>
- Licensed under the PSF License.
- HTML
- version '3.12' do
- self.release = '3.12.1'
- self.base_url = "https://docs.python.org/#{self.version}/"
- html_filters.push 'python/entries_v3', 'sphinx/clean_html', 'python/clean_html'
- end
- version '3.11' do
- self.release = '3.11.7'
- self.base_url = "https://docs.python.org/#{self.version}/"
- html_filters.push 'python/entries_v3', 'sphinx/clean_html', 'python/clean_html'
- end
- version '3.10' do
- self.release = '3.10.13'
- self.base_url = "https://docs.python.org/#{self.version}/"
- html_filters.push 'python/entries_v3', 'sphinx/clean_html', 'python/clean_html'
- end
- version '3.9' do
- self.release = '3.9.14'
- self.base_url = 'https://docs.python.org/3.9/'
- html_filters.push 'python/entries_v3', 'sphinx/clean_html', 'python/clean_html'
- end
- version '3.8' do
- self.release = '3.8.14'
- self.base_url = 'https://docs.python.org/3.8/'
- html_filters.push 'python/entries_v3', 'sphinx/clean_html', 'python/clean_html'
- end
- version '3.7' do
- self.release = '3.7.14'
- self.base_url = 'https://docs.python.org/3.7/'
- html_filters.push 'python/entries_v3', 'sphinx/clean_html', 'python/clean_html'
- end
- version '3.6' do
- self.release = '3.6.12'
- self.base_url = 'https://docs.python.org/3.6/'
- html_filters.push 'python/entries_v3', 'sphinx/clean_html', 'python/clean_html'
- end
- version '3.5' do
- self.release = '3.5.9'
- self.base_url = 'https://docs.python.org/3.5/'
- html_filters.push 'python/entries_v3', 'sphinx/clean_html', 'python/clean_html'
- end
- version '2.7' do
- self.release = '2.7.17'
- self.base_url = 'https://docs.python.org/2.7/'
- html_filters.push 'python/entries_v2', 'sphinx/clean_html', 'python/clean_html'
- end
- def get_latest_version(opts)
- doc = fetch_doc('https://docs.python.org/', opts)
- doc.at_css('title').content.split(' ')[0]
- end
- end
- end
|