zoukankan      html  css  js  c++  java
  • scrapy初试水 day02(正则提取)

    1.处理方式 法一 通过HtmlXPathSelector
    import scrapy
    from scrapy.selector import HtmlXPathSelector
    class DmozSpider(scrapy.Spider):
    name = "use_scrapy" #要调用的名字
    allowed_domains = ["use_scrapy.com"] #分一个域
    start_urls = [#所有要爬路径
    "http://sou.zhaopin.com/jobs/searchresult.ashx?jl=%E5%8C%97%E4%BA%AC&kw=python&sm=0&p=1"
    ]
    #每爬完一个网页会回调parse方法
    def parse(self, response):
    hxs=HtmlXPathSelector(response)
    print('_________________________')
    hxsobj=hxs.select('//td[@class="zwmc"]/div/a')
    print(hxsobj[0].select("@href").extract())#获取链接
    print(hxsobj[0].select("text()").extract())#获取文本
    # .extract()是显示网页的原文
    print(len(hxsobj)) # 取长度
    # 后面用for循环
    for i in range(len(hxsobj)):
    print(hxsobj[i].select("@href").extract())
    2.处理方式 法二 .path或.css
    import scrapy
    class DmozSpider(scrapy.Spider):
    name = "use_scrapy01" #要调用的名字
    allowed_domains = ["use_scrapy.com"] #分一个域
    start_urls = [#所有要爬路径
    "http://sou.zhaopin.com/jobs/searchresult.ashx?jl=%E5%8C%97%E4%BA%AC&kw=python&sm=0&p=1"
    ]
    #每爬完一个网页会回调parse方法
    def parse(self, response):
    hx=response.xpath('//td[@class="zwmc"]/div/a[contains(@href, "450836980250071")]')
    #选取href里有"450836..."
    print('_________________________')
    print(hx[0].select("@href").extract()) # 取长度
    print(hx[0].select("text()").extract()) # 取长度

  • 相关阅读:
    Javascript中String()和new String()的区别——JS的包装对象
    文言色彩的客套话之感想
    面试时候可以问的问题集锦
    ES6的原始类型数据——Symbol
    python
    python
    python
    python
    python
    python
  • 原文地址:https://www.cnblogs.com/qieyu/p/7912101.html
Copyright © 2011-2022 走看看