本文实例讲述了python Scrapy框架第一个入门程序。分享给大家供大家参考,具体如下:
首先创建项目:
生气勃勃的开始项目maitian >之前<强>第二步:强>明确要抓取的字段items.py
进口scrapy 类MaitianItem (scrapy.Item): #这里定义的字段项: # name=scrapy.Field () title=scrapy.Field () 价格=scrapy.Field () 面积=scrapy.Field () 区=scrapy.Field () >之前<强>第三步:强>在蜘蛛目录下创建爬虫文件:zufang_spider.py
2.1创建一个类,并继承scrapy的一个子类:scrapy.Spider
2.2自定义爬取的名,name="后面运行框架需要用的到,
2.3定义爬取目标网址
2.4定义scrapy的方法
下面是简单项目:
进口scrapy 从maitian。项目导入MaitianItem 类MaitianSpider (scrapy.Spider): name=" zufang " start_urls=(“http://bj.maitian.cn/zfall/PG1”) def解析(自我,反应): 在response.xpath zufang_itme ('//div [@class=" list_title "]”): 收益率{ “标题”:zufang_itme.xpath (’。/h2//text () ') .extract_first () .strip (), “价格”:zufang_itme.xpath (’。/div [@class=" the_price "]/ol/强/跨度/text()的).extract_first () .strip (), “区域”:zufang_itme.xpath (’。/p/跨度/text () ') .extract_first ()。替换(㎡,”).strip (), “区”:zufang_itme.xpath (’。/p//text () ') .re (r的昌平|朝阳|东城|大兴|丰台|海淀|石景山|顺义|通州|西城”)[0], } next_page_url=response.xpath ( '//div [@ id=胺忠场盷/[@class=" down_page "]/@href”) .extract_first () 如果next_page_url不是没有: 收益scrapy.Request (response.urljoin (next_page_url)) >之前<强>第四步:强>在settings.py文件中设置数据保存到数据库
. . . ITEM_PIPELINES={' maitian.pipelines。MaitianPipeline”: 300年,} MONGODB_HOST=' 127.0.0.1 ' MONGODB_PORT=27017 MONGODB_DBNAME=' maitian ' MONGODB_DOCNAME=' zufang ' >之前<强>第五步:>强通过管道管道。py连接上面的操作
进口pymongo 从scrapy。配置导入设置 类MaitianPipeline(对象): def __init__(自我): 主机=设置(“MONGODB_HOST”) 端口=设置(“MONGODB_PORT”) db_name=设置(“MONGODB_DBNAME”) 客户=pymongo。MongoClient(主机=主机、端口=港口) db=客户(db_name) 自我。帖子=db(设置(“MONGODB_DOCNAME”)) def process_item(自我,物品,蜘蛛): zufang=dict(项) self.post.insert (zufang) 返回项目 >之前其中中间件)。py文件暂不处理
以上简单的scrapy爬虫项目搭建完毕了
更多相关内容可查看本站专题:《Python套接字编程技巧总结》,《巨蟒正则表达式用法总结》,《Python数据结构与算法教程》、《Python函数使用技巧总结》,《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》
希望本文所述对大家基于Scrapy框架的Python程序设计有所帮助。
Python Scrapy框架第一个入门程序示例