pandas.rb 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
  1. module Docs
  2. class Pandas < FileScraper
  3. self.name = 'pandas'
  4. self.type = 'sphinx'
  5. self.root_path = 'index.html'
  6. self.links = {
  7. home: 'https://pandas.pydata.org/',
  8. code: 'https://github.com/pydata/pandas'
  9. }
  10. options[:skip] = %w(internals.html release.html contributing.html whatsnew.html)
  11. options[:skip_patterns] = [/whatsnew\//]
  12. # https://github.com/pandas-dev/pandas/blob/main/LICENSE
  13. options[:attribution] = <<-HTML
  14. &copy; 2008&ndash;2011, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team<br>
  15. &copy; 2011&ndash;2025, Open source contributors<br>
  16. Licensed under the 3-clause BSD License.
  17. HTML
  18. version '2' do
  19. self.release = '2.3.0'
  20. self.base_url = "https://pandas.pydata.org/pandas-docs/version/#{self.release}/"
  21. html_filters.push 'pandas/clean_html', 'pandas/entries'
  22. options[:container] = 'main section'
  23. options[:skip_patterns] = [
  24. /development/,
  25. /getting_started/,
  26. /whatsnew/
  27. ]
  28. options[:skip] = [
  29. 'panel.html',
  30. 'pandas.pdf',
  31. 'pandas.zip',
  32. 'ecosystem.html'
  33. ]
  34. end
  35. version '1' do
  36. self.release = '1.5.0'
  37. self.base_url = "https://pandas.pydata.org/pandas-docs/version/#{self.release}/"
  38. html_filters.push 'pandas/clean_html', 'pandas/entries'
  39. options[:container] = 'main section'
  40. options[:skip_patterns] = [
  41. /development/,
  42. /getting_started/,
  43. /whatsnew/
  44. ]
  45. options[:skip] = [
  46. 'panel.html',
  47. 'pandas.pdf',
  48. 'pandas.zip',
  49. 'ecosystem.html'
  50. ]
  51. end
  52. version '0.25' do
  53. self.release = '0.25.0'
  54. self.base_url = "https://pandas.pydata.org/pandas-docs/version/#{self.release}/"
  55. html_filters.push 'pandas/entries_old', 'pandas/clean_html_old', 'sphinx/clean_html'
  56. options[:container] = '.document'
  57. end
  58. version '0.24' do
  59. self.release = '0.24.2'
  60. self.base_url = "https://pandas.pydata.org/pandas-docs/version/#{self.release}/"
  61. html_filters.push 'pandas/entries_old', 'pandas/clean_html_old', 'sphinx/clean_html'
  62. options[:container] = '.document'
  63. end
  64. version '0.23' do
  65. self.release = '0.23.4'
  66. self.base_url = "https://pandas.pydata.org/pandas-docs/version/#{self.release}/"
  67. html_filters.push 'pandas/entries_old', 'pandas/clean_html_old', 'sphinx/clean_html'
  68. options[:container] = '.document'
  69. end
  70. version '0.22' do
  71. self.release = '0.22.0'
  72. self.base_url = "https://pandas.pydata.org/pandas-docs/version/#{self.release}/"
  73. html_filters.push 'pandas/entries_old', 'pandas/clean_html_old', 'sphinx/clean_html'
  74. options[:container] = '.document'
  75. end
  76. version '0.21' do
  77. self.release = '0.21.1'
  78. self.base_url = "https://pandas.pydata.org/pandas-docs/version/#{self.release}/"
  79. html_filters.push 'pandas/entries_old', 'pandas/clean_html_old', 'sphinx/clean_html'
  80. options[:container] = '.document'
  81. end
  82. version '0.20' do
  83. self.release = '0.20.3'
  84. self.base_url = "https://pandas.pydata.org/pandas-docs/version/#{self.release}/"
  85. html_filters.push 'pandas/entries_old', 'pandas/clean_html_old', 'sphinx/clean_html'
  86. options[:container] = '.document'
  87. end
  88. version '0.19' do
  89. self.release = '0.19.2'
  90. self.base_url = "https://pandas.pydata.org/pandas-docs/version/#{self.release}/"
  91. html_filters.push 'pandas/entries_old', 'pandas/clean_html_old', 'sphinx/clean_html'
  92. options[:container] = '.document'
  93. end
  94. version '0.18' do
  95. self.release = '0.18.1'
  96. self.base_url = "https://pandas.pydata.org/pandas-docs/version/#{self.release}/"
  97. html_filters.push 'pandas/entries_old', 'pandas/clean_html_old', 'sphinx/clean_html'
  98. options[:container] = '.document'
  99. end
  100. def get_latest_version(opts)
  101. get_latest_github_release('pandas-dev', 'pandas', opts)
  102. end
  103. end
  104. end