[RUBY] Erstellen Sie einen Mechanismus zum Buchen von Reservierungen an Qiita [Entwurf einer Akquisition] ~ Codierung von 10 Zeilen pro Tag ~ ~

Tag 8

Vom letzten Mal an werden wir den Akquisitionsteil von Qiita erstellen.

[Technisches Thema]

Qiita Zugkratzen

Sprache

Ziel zu liefern

Holen Sie sich Ihren eigenen Entwurf einer Liste von Qiita

Code und Dokumentation

Umsetzung des Akquisitionsentwurfs

Da es sich wie beim letzten Mal um einen Anmeldesystemprozess handelt, verwenden Sie mechanize.

crawler.rb

crawler.rb


page = agent.get("https://qiita.com/drafts")
doc = Nokogiri::HTML.parse(page.body, nil, 'utf-8')
json = JSON.parse(doc.css('.js-react-on-rails-component')[1].inner_html)
json['creating_draft_items'].each do |item|
  if item['raw_body'].match(/Reservierungsbuchung/)
    id = item['item_uuid']
    title = item['title']
    raw_body = item['raw_body']
    tags = item['tag_notation'].split(' ')
    agent.get("https://qiita.com/drafts/#{id}")
    tag_data = []
    tags.each do |tag|
      tag_data.push({name:tag,versions: []})
    end
  end
end

Fügen Sie den obigen Satz hinzu, indem Sie ihn vom letzten Mal hinzufügen und ändern. Im obigen Code erhalten wir eine Liste mit Informationsentwürfen, und wenn das Wort "reservierter Beitrag" darin enthalten ist, erhalten wir diese Informationen. Beim letzten Mal habe ich die URL als ID im Entwurfserfassungsteil angegeben, sie wird jedoch von / Drafts umgeleitet, sodass dies möglich ist.

【nächstes Mal】 Ich werde endlich einen Beitragsteil machen, aber es scheint schwieriger zu sein als ich dachte ... Vielleicht verlasse ich mich auf Selen ...

Recommended Posts

Erstellen Sie einen Mechanismus zum Buchen von Reservierungen an Qiita [Entwurf einer Akquisition] ~ Codierung von 10 Zeilen pro Tag ~ ~
Erstellen Sie einen Mechanismus zum Buchen von Reservierungen an Qiita [Reservierungsbuchung] ~ Codieren von 10 Zeilen pro Tag ~ ~
Codierung von 10 Zeilen pro Tag ~ Scraping-Implementierung ~
So erstellen Sie ein Maven-Repository für 2020
Codierung von 10 Zeilen pro Tag ~ Aufbau der Kratzumgebung ~
So erstellen Sie überall eine H2-Datenbank
So erstellen Sie Pagenationen für das "Kaminari" -Array
Ich möchte eine generische Anmerkung für einen Typ erstellen
Tutorial zum Erstellen eines Blogs mit Rails für Anfänger Teil 1
So erstellen Sie ein leichtes Container-Image für Java-Apps
Tutorial zum Erstellen eines Blogs mit Rails für Anfänger Teil 2
So erstellen und starten Sie eine Docker-Datei für Payara Micro
Tutorial zum Erstellen eines Blogs mit Rails für Anfänger Teil 0