Skip to content

Commit

Permalink
Update scraper.rb
Browse files Browse the repository at this point in the history
  • Loading branch information
BfB-Schenefeld committed Apr 22, 2024
1 parent 59560ee commit f936e0b
Showing 1 changed file with 19 additions and 23 deletions.
42 changes: 19 additions & 23 deletions scraper.rb
Original file line number Diff line number Diff line change
Expand Up @@ -26,32 +26,28 @@
require 'open-uri'
require 'nokogiri'

# Funktion zum Scrapen von Details einer Sitzungswebseite
def scrape_event_details(event_url)
puts "Zugriff auf Sitzungsseite: #{event_url}"
document = Nokogiri::HTML(open(event_url))

event_data = []
document.css('tr').each do |row|
index_number = row.css('td.tonr a').text.strip rescue ''
betreff = row.css('td.tobetreff div a').text.strip rescue row.css('td.tobetreff div').text.strip
top_link = row.at_css('td.tobetreff div a')
top_url = top_link ? "https://www.sitzungsdienst-schenefeld.de/bi/#{top_link['href']}" : "-"
vorlage_link = row.at_css('td.tovonr a')
vorlage_text = vorlage_link ? vorlage_link.text.strip : "-"
vorlage_url = vorlage_link ? "https://www.sitzungsdienst-schenefeld.de/bi/#{vorlage_link['href']}" : "-"

if !index_number.empty? && !betreff.empty?
event_data << [index_number, betreff, top_url, vorlage_text, vorlage_url]
puts "Gefunden: #{index_number}, Betreff: #{betreff}, TOP-URL: #{top_url}, Vorlage: #{vorlage_text}, Vorlage URL: #{vorlage_url}"
end
# Funktion zum Scrapen von Details einer TOP-Seite (Ebene 3)
def scrape_top_details(top_url)
puts "Zugriff auf TOP-Seite: #{top_url}"
document = Nokogiri::HTML(open(top_url))

# Extraktion des Vorlagen-Betreffs, wenn vorhanden
vorlagen_betreff_element = document.at_css('span#vobetreff a')
if vorlagen_betreff_element
vorlagen_betreff_text = vorlagen_betreff_element.text.strip
vorlagen_betreff_url = "https://www.sitzungsdienst-schenefeld.de/bi/#{vorlagen_betreff_element['href']}"
puts "Vorlagen-Betreff gefunden: #{vorlagen_betreff_text}, URL: #{vorlagen_betreff_url}"
[vorlagen_betreff_text, vorlagen_betreff_url]
else
puts "Kein Vorlagen-Betreff vorhanden."
["-", "-"]
end
return event_data
end

# Beispiel-URL (bitte durch eine gültige URL ersetzen)
test_url = 'https://www.sitzungsdienst-schenefeld.de/bi/to010_r.asp?SILFDNR=4967'
scrape_event_details(test_url)
# Beispiel-URL für eine TOP-Seite
test_top_url = 'https://www.sitzungsdienst-schenefeld.de/bi/to020_r.asp?TOLFDNR=23884'
scrape_top_details(test_top_url)




Expand Down

0 comments on commit f936e0b

Please sign in to comment.