Comment puis-je démarrer avec la page web grattage à l'aide de Perl?
Je suis intéressé à en apprendre Perl. Je suis à l'aide de l'Apprentissage de Perl livres et cpan sites web de référence.
Je suis impatient de faire quelques web/texte de grattage application à l'aide de Perl pour appliquer tout ce que j'ai appris.
Merci de me suggérer quelques bonnes options pour commencer.
(ce n'est pas des devoirs à faire. voulez faire quelque chose en Perl qui pourrait m'aider à exploiter de base de Perl dispose d')
et beaucoup de gens pensent le contraire!
Ce qu'un commentaire idiot. De repérage.
dans Joe de la défense, c'était à cause de la "démolition" de faute d'orthographe (maintenant corrigé) dans le titre. Cependant l'infini perl-bashing est assez fastidieux (heureusement, il semble y avoir moins été le cas récemment).
Je vais régulièrement voir intéressant d'orthographe dans les questions relatives à d'autres langues, mais pour une raison quelconque, je ne suis pas déplacé de faire des remarques sarcastiques à propos de ces langues. Je trouve intéressant qu'il y a très peu de gens pour qui "Perl doit sucer" pour eux de se sentir bien dans leur choix de langage de programmation. Voir aussi: blog.nu42.com/2010/12/...
Allez-y les gars, ne peut pas vous prendre une blague? Et oui, si vous avez regardé l'historique, vous verriez que la question initiale a dit "déchirage".
Ce qu'un commentaire idiot. De repérage.
dans Joe de la défense, c'était à cause de la "démolition" de faute d'orthographe (maintenant corrigé) dans le titre. Cependant l'infini perl-bashing est assez fastidieux (heureusement, il semble y avoir moins été le cas récemment).
Je vais régulièrement voir intéressant d'orthographe dans les questions relatives à d'autres langues, mais pour une raison quelconque, je ne suis pas déplacé de faire des remarques sarcastiques à propos de ces langues. Je trouve intéressant qu'il y a très peu de gens pour qui "Perl doit sucer" pour eux de se sentir bien dans leur choix de langage de programmation. Voir aussi: blog.nu42.com/2010/12/...
Allez-y les gars, ne peut pas vous prendre une blague? Et oui, si vous avez regardé l'historique, vous verriez que la question initiale a dit "déchirage".
OriginalL'auteur Rajan | 2011-02-01
Vous devez vous connecter pour publier un commentaire.
Si les pages web que vous voulez gratter nécessite JavaScript afin de fonctionner correctement, vous allez avoir besoin de plus que ce que WWW::Mechanize peut vous fournir. Vous pourriez même avoir recours à du contrôle d'un navigateur spécifique par Perl (par exemple à l'aide de Win32::IE::Mechanize ou WWW::Mechanize::Firefox).
Je n'ai pas essayé, mais il y a aussi WWW::Scripter avec le WWW::Scripteur::Plugin::JavaScript plugin.
Bien sûr, mais le contrôle d'Internet Explorer (via
Win32::OLE
) directement m'a sauvé beaucoup de temps à de nombreuses reprises.OriginalL'auteur Sinan Ünür
Le plus populaire du web scraping module Perl est WWW::Mechanize, ce qui est excellent si vous ne pouvez pas récupérer votre page de destination, mais besoin de naviguer à l'aide des liens ou des formulaires, par exemple, pour vous connecter. Jetez un oeil à son la documentation pour l'inspiration.
Si vos besoins sont simples, vous pouvez extraire les informations dont vous avez besoin à partir de l'HTML à l'aide d'expressions régulières (mais méfiez-vous de votre la santé mentale), sinon il pourrait être préférable d'utiliser un module comme HTML:: "TreeBuilder" pour faire le travail.
Un module qui semble intéressant, mais que je n'ai pas vraiment encore essayé, est WWW::Scripter. C'est une sous-classe de WWW::Mechanize, mais a prise en charge de Javascript et AJAX, et intègre également HTML::DOM, une autre façon d'extraire des informations à partir de la page.
WWW::Mechanize
fournit le type d'analyse nécessaires pour naviguer à l'aide des liens et des formes.bon point, ajouté.
OriginalL'auteur mscha
Comme d'autres l'ont dit, WWW::Mechanize est un excellent module à utiliser pour le web scraping tâches; vous ferez bien de savoir comment l'utiliser, il peut effectuer des tâches courantes très facile. Je l'ai utilisé pour plusieurs web grattage tâches, et il prend soin de tous les trucs ennuyeux - "allez ici, de trouver un lien avec ce texte et de le suivre, maintenant, trouver un formulaire avec les champs "nom d'utilisateur" et "mot de passe", entrez les valeurs et soumettre le formulaire...".
Scrappy est aussi très intéressant; il permet de faire beaucoup avec très peu de code, par exemple, à partir de sa documentation:
Scrappy fait usage de Web::Grattoir sous le capot, où vous pourriez vouloir regarder trop comme une autre option.
Aussi, si vous avez besoin d'extraire des données à partir des tables HTML, HTML::TableExtract rend cette mort facile - vous pouvez trouver la table qui vous intéresse en nommant les titres qu'il contient, et d'extraire des données très facilement, en effet, par exemple:
OriginalL'auteur David Precious
Essayez le Web-Grattoir module Perl. Un les débutants tutoriel peut être trouvé ici.
C'est sûr, facile à utiliser et rapide.
OriginalL'auteur juFo
Vous pouvez également jeter un oeil à mon nouveau Perl wrapper sur Java interface htmlunit. Il est très facile à utiliser, par exemple, regardez le tutoriel ici:
http://code.google.com/p/spidey/wiki/QuickTutorial
D'ici demain je vais publier quelques instructions d'installation détaillées et une première version.
Contrairement à Mécaniser et comme vous obtenez une certaine prise en charge de JavaScript et il est plus rapide et moins gourmandes en mémoire que la capture d'écran.
OriginalL'auteur Antonio Bonifati