Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Web crawler
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
===Selection policy=== Given the current size of the Web, even large search engines cover only a portion of the publicly available part. A 2009 study showed even large-scale [[search engines]] index no more than 40β70% of the indexable Web;<ref>{{cite conference |title=The indexable web is more than 11.5 billion pages |author=Gulls, A. |author2=A. Signori |year=2005 |publisher=ACM Press |book-title=Special interest tracks and posters of the 14th international conference on World Wide Web |pages=902β903 |doi=10.1145/1062745.1062789 }}</ref> a previous study by [[Steve Lawrence (computer scientist)|Steve Lawrence]] and [[Lee Giles]] showed that no [[Search engine indexing|search engine indexed]] more than 16% of the Web in 1999.<ref>{{Cite journal | doi = 10.1038/21987 | volume = 400 | issue = 6740 | pages = 107β9 | author1= Lawrence, Steve | author2 = C. Lee Giles | title = Accessibility of information on the web | journal = Nature | date = 1999-07-08 | pmid = 10428673 |bibcode = 1999Natur.400..107L | s2cid = 4347646 | doi-access = free }}</ref> As a crawler always downloads just a fraction of the [[Web pages]], it is highly desirable for the downloaded fraction to contain the most relevant pages and not just a random sample of the Web. This requires a metric of importance for prioritizing Web pages. The importance of a page is a function of its [[Intrinsic and extrinsic properties (philosophy)|intrinsic]] quality, its popularity in terms of links or visits, and even of its URL (the latter is the case of [[vertical search|vertical search engines]] restricted to a single [[top-level domain]], or search engines restricted to a fixed Web site). Designing a good selection policy has an added difficulty: it must work with partial information, as the complete set of Web pages is not known during crawling. Junghoo Cho ''et al.'' made the first study on policies for crawling scheduling. Their data set was a 180,000-pages crawl from the <kbd>stanford.edu</kbd> domain, in which a crawling simulation was done with different strategies.<ref>{{cite journal |author=Cho, J. |author2=Garcia-Molina, H. |author3=Page, L. |title = Efficient Crawling Through URL Ordering |url = http://ilpubs.stanford.edu:8090/347/ |journal = Seventh International World-Wide Web Conference |date = April 1998 |doi=10.1142/3725 |isbn=978-981-02-3400-3 |place = Brisbane, Australia |access-date = 2009-03-23}}</ref> The ordering metrics tested were [[Breadth-first search|breadth-first]], [[backlink]] count and partial [[PageRank]] calculations. One of the conclusions was that if the crawler wants to download pages with high Pagerank early during the crawling process, then the partial Pagerank strategy is the better, followed by breadth-first and backlink-count. However, these results are for just a single domain. Cho also wrote his PhD dissertation at Stanford on web crawling.<ref>Cho, Junghoo, [http://oak.cs.ucla.edu/~cho/papers/cho-thesis.pdf "Crawling the Web: Discovery and Maintenance of a Large-Scale Web Data"], PhD dissertation, Department of Computer Science, Stanford University, November 2001.</ref> Najork and Wiener performed an actual crawl on 328 million pages, using breadth-first ordering.<ref>Najork, Marc and Janet L. Wiener. [http://www10.org/cdrom/papers/pdf/p208.pdf "Breadth-first crawling yields high-quality pages".] {{Webarchive|url=https://web.archive.org/web/20171224210412/http://www10.org/cdrom/papers/pdf/p208.pdf |date=24 December 2017 }} In: ''Proceedings of the Tenth Conference on World Wide Web'', pages 114β118, Hong Kong, May 2001. Elsevier Science.</ref> They found that a breadth-first crawl captures pages with high Pagerank early in the crawl (but they did not compare this strategy against other strategies). The explanation given by the authors for this result is that "the most important pages have many links to them from numerous hosts, and those links will be found early, regardless of on which host or page the crawl originates." Abiteboul designed a crawling strategy based on an [[algorithm]] called OPIC (On-line Page Importance Computation).<ref>{{cite conference |publisher = ACM |doi = 10.1145/775152.775192 |isbn = 1-58113-680-3 |pages = 280β290 |author1 = Abiteboul, Serge |author2 = Mihai Preda |author3 = Gregory Cobena |title = Adaptive on-line page importance computation |book-title = Proceedings of the 12th international conference on World Wide Web |location = Budapest, Hungary |access-date = 2009-03-22 |year = 2003 | url = http://www2003.org/cdrom/papers/refereed/p007/p7-abiteboul.html}}</ref> In OPIC, each page is given an initial sum of "cash" that is distributed equally among the pages it points to. It is similar to a PageRank computation, but it is faster and is only done in one step. An OPIC-driven crawler downloads first the pages in the crawling frontier with higher amounts of "cash". Experiments were carried in a 100,000-pages synthetic graph with a power-law distribution of in-links. However, there was no comparison with other strategies nor experiments in the real Web. Boldi ''et al.'' used simulation on subsets of the Web of 40 million pages from the <kbd>.it</kbd> domain and 100 million pages from the WebBase crawl, testing breadth-first against depth-first, random ordering and an omniscient strategy. The comparison was based on how well PageRank computed on a partial crawl approximates the true PageRank value. Some visits that accumulate PageRank very quickly (most notably, breadth-first and the omniscient visit) provide very poor progressive approximations.<ref>{{cite journal |doi = 10.1002/spe.587 |volume = 34 |issue = 8 |pages = 711β726 |author1 =Boldi, Paolo |author2 = Bruno Codenotti |author3 = Massimo Santini |author4 = Sebastiano Vigna |title = UbiCrawler: a scalable fully distributed Web crawler |journal = Software: Practice and Experience |access-date = 2009-03-23 |year = 2004 |url = http://vigna.dsi.unimi.it/ftp/papers/UbiCrawler.pdf |citeseerx = 10.1.1.2.5538 |s2cid = 325714 |archive-date = 20 March 2009 |archive-url = https://web.archive.org/web/20090320030833/http://vigna.dsi.unimi.it/ftp/papers/UbiCrawler.pdf |url-status = dead }}</ref><ref>{{cite book |pages = 168β180 |author1 = Boldi, Paolo |author2 = Massimo Santini |author3 = Sebastiano Vigna |title = Algorithms and Models for the Web-Graph |volume = 3243 |chapter = Do Your Worst to Make the Best: Paradoxical Effects in PageRank Incremental Computations |access-date = 2009-03-23 |year = 2004 |chapter-url = http://vigna.dsi.unimi.it/ftp/papers/ParadoxicalPageRank.pdf |doi = 10.1007/978-3-540-30216-2_14 |series = Lecture Notes in Computer Science |isbn = 978-3-540-23427-2 |archive-date = 1 October 2005 |archive-url = https://web.archive.org/web/20051001063017/http://vigna.dsi.unimi.it/ftp/papers/ParadoxicalPageRank.pdf |url-status = dead }}</ref> Baeza-Yates ''et al.'' used simulation on two subsets of the Web of 3 million pages from the <kbd>.gr</kbd> and <kbd>.cl</kbd> domain, testing several crawling strategies.<ref name=baeza2005>Baeza-Yates, R.; Castillo, C.; Marin, M. and Rodriguez, A. (2005). [http://chato.cl/papers/baeza05_crawling_country_better_breadth_first_web_page_ordering.pdf "Crawling a Country: Better Strategies than Breadth-First for Web Page Ordering."] In: ''Proceedings of the Industrial and Practical Experience track of the 14th conference on World Wide Web'', pages 864β872, Chiba, Japan. ACM Press.</ref> They showed that both the OPIC strategy and a strategy that uses the length of the per-site queues are better than [[Breadth-first search|breadth-first]] crawling, and that it is also very effective to use a previous crawl, when it is available, to guide the current one. Daneshpajouh ''et al.'' designed a community based algorithm for discovering good seeds.<ref>Shervin Daneshpajouh, Mojtaba Mohammadi Nasiri, Mohammad Ghodsi, [https://www.researchgate.net/publication/220724572_A_Fast_Community_Based_Algorithm_for_Generating_Web_Crawler_Seeds_Set A Fast Community Based Algorithm for Generating Crawler Seeds Set]. In: ''Proceedings of 4th International Conference on Web Information Systems and Technologies'' (''[[Webist]]''-2008), Funchal, Portugal, May 2008.</ref> Their method crawls web pages with high PageRank from different communities in less iteration in comparison with crawl starting from random seeds. One can extract good seed from a previously-crawled-Web graph using this new method. Using these seeds, a new crawl can be very effective. ====Restricting followed links==== A crawler may only want to seek out HTML pages and avoid all other [[Internet media type|MIME types]]. In order to request only HTML resources, a crawler may make an HTTP HEAD request to determine a Web resource's MIME type before requesting the entire resource with a GET request. To avoid making numerous HEAD requests, a crawler may examine the URL and only request a resource if the URL ends with certain characters such as .html, .htm, .asp, .aspx, .php, .jsp, .jspx or a slash. This strategy may cause numerous HTML Web resources to be unintentionally skipped. Some crawlers may also avoid requesting any resources that have a [[Query string|"?"]] in them (are dynamically produced) in order to avoid [[spider trap]]s that may cause the crawler to download an infinite number of URLs from a Web site. This strategy is unreliable if the site uses [[URL rewriting]] to simplify its URLs. ====URL normalization==== {{Main|URL normalization}} Crawlers usually perform some type of [[URL normalization]] in order to avoid crawling the same resource more than once. The term ''URL normalization'', also called ''URL canonicalization'', refers to the process of modifying and standardizing a URL in a consistent manner. There are several types of normalization that may be performed including conversion of URLs to lowercase, removal of "." and ".." segments, and adding trailing slashes to the non-empty path component.<ref>{{cite book |first1 = Gautam |last1 = Pant |first2 = Padmini |last2 = Srinivasan |first3 = Filippo |last3 = Menczer |editor-last = Levene |editor-first = Mark |editor2-last = Poulovassilis |editor2-first = Alexandra |editor2-link = Alexandra Poulovassilis |contribution = Crawling the Web |contribution-url = http://dollar.biz.uiowa.edu/~pant/Papers/crawling.pdf |title = Web Dynamics: Adapting to Change in Content, Size, Topology and Use |year = 2004 |pages = 153β178 |publisher = Springer |isbn = 978-3-540-40676-1 |access-date = 9 May 2006 |archive-date = 20 March 2009 |archive-url = https://web.archive.org/web/20090320030832/http://dollar.biz.uiowa.edu/~pant/Papers/crawling.pdf |url-status = dead }}</ref> ====Path-ascending crawling==== Some crawlers intend to download/upload as many resources as possible from a particular web site. So ''path-ascending crawler'' was introduced that would ascend to every path in each URL that it intends to crawl.<ref>{{Cite journal | doi = 10.1002/asi.20078 | volume = 55 | issue = 14 | pages = 1228β1238 | last = Cothey | first = Viv | title = Web-crawling reliability | journal = Journal of the American Society for Information Science and Technology | year = 2004 | url = http://www.scit.wlv.ac.uk/~in7803/publications/cothey_2004.pdf | citeseerx = 10.1.1.117.185 }}</ref> For example, when given a seed URL of <nowiki>http://llama.org/hamster/monkey/page.html</nowiki>, it will attempt to crawl /hamster/monkey/, /hamster/, and /. Cothey found that a path-ascending crawler was very effective in finding isolated resources, or resources for which no inbound link would have been found in regular crawling. ====Focused crawling==== {{Main|Focused crawler}} The importance of a page for a crawler can also be expressed as a function of the similarity of a page to a given query. Web crawlers that attempt to download pages that are similar to each other are called '''focused crawler''' or '''topical crawlers'''. The concepts of topical and focused crawling were first introduced by [[Filippo Menczer]]<ref>Menczer, F. (1997). [http://informatics.indiana.edu/fil/Papers/ICML.ps ARACHNID: Adaptive Retrieval Agents Choosing Heuristic Neighborhoods for Information Discovery] {{Webarchive|url=https://web.archive.org/web/20121221113620/http://informatics.indiana.edu/fil/Papers/ICML.ps |date=21 December 2012 }}. In D. Fisher, ed., Machine Learning: Proceedings of the 14th International Conference (ICML97). Morgan Kaufmann</ref><ref>Menczer, F. and Belew, R.K. (1998). [http://informatics.indiana.edu/fil/Papers/AA98.ps Adaptive Information Agents in Distributed Textual Environments] {{Webarchive|url=https://web.archive.org/web/20121221113630/http://informatics.indiana.edu/fil/Papers/AA98.ps |date=21 December 2012 }}. In K. Sycara and M. Wooldridge (eds.) Proc. 2nd Intl. Conf. on Autonomous Agents (Agents '98). ACM Press</ref> and by Soumen Chakrabarti ''et al.''<ref>{{cite journal|url=http://www.fxpal.com/people/vdberg/pubs/www8/www1999f.pdf|archive-url=https://web.archive.org/web/20040317210216/http://www.fxpal.com/people/vdberg/pubs/www8/www1999f.pdf|url-status=dead|archive-date=2004-03-17|doi=10.1016/s1389-1286(99)00052-3|title=Focused crawling: A new approach to topic-specific Web resource discovery|journal=Computer Networks|volume=31|issue=11β16|pages=1623β1640|year=1999|last1=Chakrabarti|first1=Soumen|last2=Van Den Berg|first2=Martin|last3=Dom|first3=Byron}}</ref> The main problem in focused crawling is that in the context of a Web crawler, we would like to be able to predict the similarity of the text of a given page to the query before actually downloading the page. A possible predictor is the anchor text of links; this was the approach taken by Pinkerton<ref name=pinkerton1994>Pinkerton, B. (1994). [https://web.archive.org/web/20010904075500/http://archive.ncsa.uiuc.edu/SDG/IT94/Proceedings/Searching/pinkerton/WebCrawler.html Finding what people want: Experiences with the WebCrawler]. In Proceedings of the First World Wide Web Conference, Geneva, Switzerland.</ref> in the first web crawler of the early days of the Web. Diligenti ''et al.''<ref>Diligenti, M., Coetzee, F., Lawrence, S., Giles, C. L., and Gori, M. (2000). [http://clgiles.ist.psu.edu/papers/VLDB-2000-focused-crawling.pdf Focused crawling using context graphs]. In Proceedings of 26th International Conference on Very Large Databases (VLDB), pages 527-534, Cairo, Egypt.</ref> propose using the complete content of the pages already visited to infer the similarity between the driving query and the pages that have not been visited yet. The performance of a focused crawling depends mostly on the richness of links in the specific topic being searched, and a focused crawling usually relies on a general Web search engine for providing starting points. =====Academic focused crawler===== An example of the [[focused crawlers]] are academic crawlers, which crawls free-access academic related documents, such as the ''citeseerxbot'', which is the crawler of [[CiteSeer]]<sup>X</sup> search engine. Other academic search engines are [[Google Scholar]] and [[Microsoft Academic Search]] etc. Because most academic papers are published in [[PDF]] formats, such kind of crawler is particularly interested in crawling PDF, [[PostScript]] files, [[Microsoft Word]] including their [[Zipped file|zipped]] formats. Because of this, general open-source crawlers, such as [[Heritrix]], must be customized to filter out other [[MIME types]], or a [[middleware]] is used to extract these documents out and import them to the focused crawl database and repository.<ref>{{Cite book | doi=10.1145/2389936.2389949| chapter=Web crawler middleware for search engine digital libraries| title=Proceedings of the twelfth international workshop on Web information and data management - WIDM '12| pages=57| year=2012| last1=Wu| first1=Jian| last2=Teregowda| first2=Pradeep| last3=Khabsa| first3=Madian| last4=Carman| first4=Stephen| last5=Jordan| first5=Douglas| last6=San Pedro Wandelmer| first6=Jose| last7=Lu| first7=Xin| last8=Mitra| first8=Prasenjit| last9=Giles| first9=C. Lee| isbn=9781450317207| s2cid=18513666}}</ref> Identifying whether these documents are academic or not is challenging and can add a significant overhead to the crawling process, so this is performed as a post crawling process using [[machine learning]] or [[regular expression]] algorithms. These academic documents are usually obtained from home pages of faculties and students or from publication page of research institutes. Because academic documents make up only a small fraction of all web pages, a good seed selection is important in boosting the efficiencies of these web crawlers.<ref>{{Cite book |doi = 10.1145/2380718.2380762|chapter = The evolution of a crawling strategy for an academic document search engine|title = Proceedings of the 3rd Annual ACM Web Science Conference on - Web ''Sci'' '12|pages = 340β343|year = 2012|last1 = Wu|first1 = Jian|last2 = Teregowda|first2 = Pradeep|last3 = RamΓrez|first3 = Juan Pablo FernΓ‘ndez|last4 = Mitra|first4 = Prasenjit|last5 = Zheng|first5 = Shuyi|last6 = Giles|first6 = C. Lee|isbn = 9781450312288|s2cid = 16718130}}</ref> Other academic crawlers may download plain text and [[HTML]] files, that contains [[metadata]] of academic papers, such as titles, papers, and abstracts. This increases the overall number of papers, but a significant fraction may not provide free PDF downloads. =====Semantic focused crawler===== Another type of focused crawlers is semantic focused crawler, which makes use of [[domain ontology|domain ontologies]] to represent topical maps and link Web pages with relevant ontological concepts for the selection and categorization purposes.<ref>{{cite book|chapter-url=https://www.researchgate.net/publication/44241179|doi=10.1007/978-3-642-02457-3_74|chapter=State of the Art in Semantic Focused Crawlers|title=Computational Science and Its Applications β ICCSA 2009|volume=5593|pages=910β924|series=Lecture Notes in Computer Science|year=2009|last1=Dong|first1=Hai|last2=Hussain|first2=Farookh Khadeer|last3=Chang|first3=Elizabeth|isbn=978-3-642-02456-6|hdl=20.500.11937/48288}}</ref> In addition, ontologies can be automatically updated in the crawling process. Dong et al.<ref>{{cite journal|url=https://www.researchgate.net/publication/264620349|doi=10.1002/cpe.2980|title=SOF: A semi-supervised ontology-learning-based focused crawler|journal=Concurrency and Computation: Practice and Experience|volume=25|issue=12|pages=1755β1770|year=2013|last1=Dong|first1=Hai|last2=Hussain|first2=Farookh Khadeer|s2cid=205690364}}</ref> introduced such an ontology-learning-based crawler using a [[support-vector machine]] to update the content of ontological concepts when crawling Web pages.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)