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()) # 取长度

  • 相关阅读:
    codeforces A. Chess Placing
    codeforces E. Cyclic Components
    poj1930(小数化分数)
    hdu4497 (正数分解定理+排列组合)
    cf 466 div.2 A. Points on the line
    hdu1576(扩展欧几里得求逆元板子)
    逆元(转载)
    stiring 数..........
    逆元
    矩阵 构造 模板
  • 原文地址:https://www.cnblogs.com/qieyu/p/7912101.html
Copyright © 2011-2022 走看看