Maintenant que vous avez appris à implémenter le scraping, je vais l'écrire comme résultat d'apprentissage.
Après avoir lu cet article, qu'est-ce que le grattage? Que dois-je faire pour le mettre en œuvre? Je peux comprendre.
Qu'est-ce que le grattage? Pour apprendre des informations d'un site Web et les traiter pour générer de nouvelles informations. Par exemple, visiter divers sites de restaurants et créer une liste de prix.
Je veux en savoir plus! Si vous pensez cela, veuillez rechercher sur Google.
Maintenant, je vais écrire comment mettre en œuvre le scraping.
1 Installez le gemfile "mécaniser"
gem 'mechanize'
Tapez ensuite bundle install dans le terminal
2 Créez une instance de la classe Mechanize
agent = Mechanize.new #Créez une instance de la classe Mechanize et affectez-la à l'agent variable
3 Obtenir les informations HTML du site Web Utilisez la méthode d'instance "get" de la classe Mechanize pour obtenir le code HTML du site Web que vous souhaitez gratter.
page = agent.get("https://www.google.com/?hl=ja")
4 Utilisez la méthode de recherche pour rechercher des éléments HTML La méthode de recherche est utilisée pour l'objet qui contient les informations de page obtenues par la méthode get. Cela permet de rechercher le contenu de l'élément HTML spécifié à partir des informations HTML acquises du site Web. Même s'il n'y a qu'un seul élément de balise HTML correspondant, la valeur de retour sera renvoyée sous la forme d'un tableau.
agent = Mechanize.new
page = agent.get("https://www.google.com/?hl=ja")
elements = page.search('h1')
↑ Les informations de l'élément h1 dans https://www.google.com/?hl=ja sont acquises.
5 méthode inner_text Si vous souhaitez obtenir le texte des informations HTML obtenues par la méthode de recherche, utilisez la méthode inner_text.
agent = Mechanize.new
page = agent.get("URL du site Web que vous souhaitez supprimer")
elements = page.search('h2 a') #Rechercher un élément sous l'élément h2
elements.each do |ele|
puts ele.inner_text
end
6 Méthode get_attribute Si vous souhaitez obtenir la valeur d'un attribut HTML, utilisez la méthode get_attribute. Par exemple, le code HTML de l'élément a tag a un attribut "href" dont la valeur est l'URL de la destination du lien. Vous pouvez obtenir la valeur de l'attribut spécifié par l'argument en écrivant get_attribute (attribut).
agent = Mechanize.new
page = agent.get("URL du site Web que vous souhaitez supprimer")
elements = page.search('h2 a') #Rechercher un élément sous l'élément h2
elements.each do |ele|
puts ele.get_attribute('href') # puts ele[:href]Peut être
end
● Créer une instance de la classe Mechanize ● Obtenez les informations HTML du site Web avec la méthode d'instance .get (URL du site Web pour lequel vous souhaitez obtenir des informations) de la classe Mechanize. ● Apprenez en spécifiant l'élément de balise avec les données souhaitées avec la méthode de recherche ● Utilisez les méthodes inner_text et get_attribute pour apprendre les informations souhaitées pour les informations HTML de l'élément de balise acquis.
Recommended Posts