scrapy初试水 day02(正则提取)

Posted 窃语

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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()) # 取长度

 

以上是关于scrapy初试水 day02(正则提取)的主要内容,如果未能解决你的问题,请参考以下文章

Android初试水

python爬虫框架scrapy初试

scrapy爬虫-1-初试页面抓取

菜鸟初试水--JQuery基础

python爬虫框架scrapy初试(二点一)

Python Web2py 初试水