Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>Here's your spider:</p> <pre><code>from scrapy.item import Item, Field from scrapy.spider import BaseSpider from scrapy.selector import HtmlXPathSelector class UnivercellItem(Item): vendor = Field() model = Field() price = Field() BASE_URL = "http://www.univercell.in/control/AjaxCategoryDetail?productCategoryId=PRO-SMART&amp;category_id=PRO-SMART&amp;attrName=&amp;min=&amp;max=&amp;sortSearchPrice=&amp;VIEW_INDEX=%s&amp;VIEW_SIZE=15&amp;serachupload=&amp;sortupload=" class UnivercellSpider(BaseSpider): name = "univercell_spider" allowed_domains = ["www.univercell.in"] start_urls = [BASE_URL % index for index in range(1, 21)] def parse(self, response): hxs = HtmlXPathSelector(response) mobiles = hxs.select("//div[@class='productsummary']") print mobiles for mobile in mobiles: item = UnivercellItem() item['vendor'] = mobile.select('.//div[1]/div/text()').extract()[0].strip() item['model'] = mobile.select('.//div[3]/div[1]/a/text()').extract()[0].strip() item['price'] = mobile.select('.//span[@class="regularPrice"]/span/text()').extract()[0].strip() yield item </code></pre> <p>Save it to <code>spider.py</code> and run via <code>scrapy runspider spider.py -o output.json</code>. Then in <code>output.json</code> you will see:</p> <pre><code>{"model": "T375", "vendor": "LG", "price": "Special Price Click Here"} {"model": "P725 Optimus 3D Max", "vendor": "LG", "price": "Special Price Click Here"} {"model": "P705 Optimus L7", "vendor": "LG", "price": "Special Price Click Here"} {"model": "9320 Curve", "vendor": "Blackberry", "price": "Special Price Click Here"} {"model": "Xperia Sola", "vendor": "Sony", "price": "Rs.14,500.00"} {"model": "Xperia U", "vendor": "Sony", "price": "Special Price Click Here"} {"model": "Lumia 610", "vendor": "Nokia", "price": "Special Price Click Here"} ... </code></pre> <p>Hope that helps.</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload