Executing a fast crawl over a computer-executable application
AssigneeMicrosoft Corporation
InventorsJie Liu, Suman Nath, Xiaozhu Lin
Life of this patent
Estimating the term…
Abstract
Technologies related to crawling computer-executable applications are described. A full crawl is executed over an application, where executing the full crawl includes causing the application to output a plurality of pages. The application retrieves content from the World Wide Web when generating the pages for output. Thereafter, a fast crawl is executed over the application, where executing the fast crawl takes less time when compared to the time needed to execute the full crawl.
Claims20
A method for executing a fast crawl over an application, the method comprising:
- receiving the application, the application configured for installment on a computing device, wherein the application, when executing on the computing device, generates a plurality of pages responsive to receipt of respective user input, wherein the plurality of pages comprise data retrieved from the Internet;
- executing a full crawl over the application, wherein executing the full crawl comprises:
- executing the application in an emulator, wherein executing the application in the emulator comprises retrieving the data from the Internet;
- and
- writing the plurality of pages to a disk;
- and
- executing the fast crawl over the application subsequent to the executing of the full crawl over the application, wherein executing the fast crawl comprises:
- executing the application in the emulator;
- and
- employing at least one optimization technique to cause the fast crawl to be completed in less time than the full crawl, or within a given time limit, wherein the at least one optimization technique is based at least in part upon the plurality of pages written to the disk from the full crawl over the application.
The method 1, wherein that data retrieved from the Internet by the application is based upon a geographic location provided to the application as input.
A method executed by a processor of a computing device, the method comprising:
- executing a full crawl over a computer-executable application provided to an application repository by a developer, wherein the computer-executable application is selectable and downloadable from the application repository, and wherein the executing the full crawl comprises:
- causing the computer-executable application to execute a navigation script, wherein the computer-executable application outputs pages when executing the navigation script, and wherein the computer-executable application retrieves data from a network-accessible data repository for inclusion in the pages;
- and
- writing the pages output by the computer-executable application to disk;
- and
- executing a fast crawl over the computer-executable application subsequent to the executing of the full crawl, wherein the executing of the fast crawl is based upon the pages output by the computer-executable application during the full crawl.
A computer-readable storage medium comprising instructions that, when executed by a processor, cause the processor to perform acts comprising:
- receiving a computer-executable application, the computer-executable application configured for installment on a client computing device and, when executed at the client computing device, retrieves data from the Internet;
- executing a full crawl over the computer-executable application, wherein executing the full crawl comprising:
- executing the computer-executable application in an emulator to cause the computer-executable application to output a plurality of pages, each page in the plurality of pages comprising content retrieved during runtime of the application from the Internet;
- and
- writing the plurality of pages to a data repository;
- receiving a time constraint;
- identifying a subset of the plurality of pages based at least in part upon an amount of time taken to retrieve respective content for inclusion in a page from the Internet during the full crawl and the time constraint;
- and
- executing a fast crawl over the computer-executable application, wherein executing the fast crawl comprises executing the computer-executable application in the emulator to cause the computer-executable application to output the subset of the plurality of pages.
Dependencies are inferred from the claim text.