pandas.rb 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. module Docs
  2. class Pandas < UrlScraper
  3. self.name = 'pandas'
  4. self.type = 'sphinx'
  5. self.root_path = 'index.html'
  6. self.links = {
  7. home: 'http://pandas.pydata.org/',
  8. code: 'https://github.com/pydata/pandas'
  9. }
  10. html_filters.push 'pandas/entries', 'pandas/clean_html', 'sphinx/clean_html'
  11. # Cannot take only the body, as the sidebar gives info about the type.
  12. options[:container] = '.document'
  13. options[:skip] = %w(internals.html release.html contributing.html whatsnew.html)
  14. options[:attribution] = <<-HTML
  15. &copy; 2008&ndash;2012, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team<br>
  16. Licensed under the 3-clause BSD License.
  17. HTML
  18. version '0.23' do
  19. self.release = '0.23.4'
  20. self.base_url = "http://pandas.pydata.org/pandas-docs/version/#{self.release}/"
  21. end
  22. version '0.22' do
  23. self.release = '0.22.0'
  24. self.base_url = "http://pandas.pydata.org/pandas-docs/version/#{self.release}/"
  25. end
  26. version '0.21' do
  27. self.release = '0.21.0'
  28. self.base_url = "http://pandas.pydata.org/pandas-docs/version/#{self.release}/"
  29. end
  30. version '0.20' do
  31. self.release = '0.20.3'
  32. self.base_url = "http://pandas.pydata.org/pandas-docs/version/#{self.release}/"
  33. end
  34. version '0.19' do
  35. self.release = '0.19.2'
  36. self.base_url = "http://pandas.pydata.org/pandas-docs/version/#{self.release}/"
  37. end
  38. version '0.18' do
  39. self.release = '0.18.1'
  40. self.base_url = "http://pandas.pydata.org/pandas-docs/version/#{self.release}/"
  41. end
  42. def get_latest_version(opts)
  43. doc = fetch_doc('http://pandas.pydata.org/pandas-docs/stable/', opts)
  44. label = doc.at_css('.body > .section > p').content
  45. label.scan(/Version: ([0-9.]+)/)[0][0]
  46. end
  47. end
  48. end