Python爬虫 scrapy框架爬取某招聘网存入mongodb解析


Posted in Python onJuly 31, 2019

创建项目

scrapy startproject zhaoping

创建爬虫

cd zhaoping
scrapy genspider hr zhaopingwang.com

目录结构

Python爬虫 scrapy框架爬取某招聘网存入mongodb解析

items.py

title = scrapy.Field()
  position = scrapy.Field()
  publish_date = scrapy.Field()

pipelines.py

from pymongo import MongoClient

mongoclient = MongoClient(host='192.168.226.150',port=27017)
collection = mongoclient['zhaoping']['hr']

class TencentPipeline(object):
  def process_item(self, item, spider):
    print(item)
    # 需要转换为 dict
    collection.insert(dict(item))
    return item

spiders/hr.py

def parse(self, response):
    # 不要第一个 和最后一个
    tr_list = response.xpath("//table[@class='tablelist']/tr")[1:-1]
    for tr in tr_list:
      item = TencentItem()
      # xpath 从1 开始数起
      item["title"] = tr.xpath("./td[1]/a/text()").extract_first()
      item["position"] = tr.xpath("./td[2]/text()").extract_first()
      item["publish_date"] = tr.xpath("./td[5]/text()").extract_first()
      yield item

    next_url = response.xpath("//a[@id='next']/@href").extract_first()
    # 构造url
    if next_url != "javascript:;":
      print(next_url)
      next_url = "https://hr.tencent.com/" + next_url
      yield scrapy.Request(url=next_url,callback=self.parse,)

就是这么简单,就获取到数据

Python爬虫 scrapy框架爬取某招聘网存入mongodb解析

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
用Python实现QQ游戏大家来找茬辅助工具
Sep 14 Python
收集的几个Python小技巧分享
Nov 22 Python
Python实现SSH远程登陆,并执行命令的方法(分享)
May 08 Python
Python 3.x 安装opencv+opencv_contrib的操作方法
Apr 02 Python
python 多维切片之冒号和三个点的用法介绍
Apr 19 Python
python 用lambda函数替换for循环的方法
Jun 09 Python
Python之用户输入的实例
Jun 22 Python
Django model 中设置联合约束和联合索引的方法
Aug 06 Python
python使用Matplotlib改变坐标轴的默认位置
Oct 18 Python
基于python实现把图片转换成素描
Nov 13 Python
如何搭建pytorch环境的方法步骤
May 06 Python
python selenium xpath定位操作
Sep 01 Python
python爬虫 模拟登录人人网过程解析
Jul 31 #Python
Python爬虫 bilibili视频弹幕提取过程详解
Jul 31 #Python
Django实现跨域的2种方法
Jul 31 #Python
Django CSRF跨站请求伪造防护过程解析
Jul 31 #Python
在VS2017中用C#调用python脚本的实现
Jul 31 #Python
使用pip安装python库的多种方式
Jul 31 #Python
python实现几种归一化方法(Normalization Method)
Jul 31 #Python
You might like
ThinkPHP里用U方法调用js文件实例
2015/06/18 PHP
PHP文件系统管理(实例讲解)
2017/09/19 PHP
php在windows环境下获得cpu内存实时使用率(推荐)
2018/02/08 PHP
laravel通过a标签从视图向控制器实现传值
2019/10/15 PHP
PHP tp5中使用原生sql查询代码实例
2020/10/28 PHP
javascript下有关dom以及xml节点访问兼容问题
2007/11/26 Javascript
JS限制上传图片大小不使用控件在本地实现
2012/12/19 Javascript
Ext JS添加子组件的误区探讨
2013/06/28 Javascript
用原生js做个简单的滑动效果的回到顶部
2014/10/15 Javascript
javascript异步编程代码书写规范Promise学习笔记
2015/02/11 Javascript
jQuery实现鼠标经过图片变亮其他变暗效果
2015/05/08 Javascript
JavaScript对表格或元素按文本,数字或日期排序的方法
2015/05/26 Javascript
跟我学习JScript的Bug与内存管理
2015/11/18 Javascript
jQuery插件Validate实现自定义表单验证
2016/01/18 Javascript
浅谈js里面的InttoStr和StrtoInt
2016/06/14 Javascript
KnockoutJS 3.X API 第四章之表单submit、enable、disable绑定
2016/10/10 Javascript
jquery ajax后台返回list,前台用jquery遍历list的实现
2016/10/30 Javascript
js实现的在线调色板功能完整实例
2016/12/21 Javascript
vue父组件点击触发子组件事件的实例讲解
2018/02/08 Javascript
vue封装swiper代码实例解析
2019/10/08 Javascript
vue登录以及权限验证相关的实现
2019/10/25 Javascript
python3批量删除豆瓣分组下的好友的实现代码
2016/06/07 Python
python获取多线程及子线程的返回值
2017/11/15 Python
人生苦短我用python python如何快速入门?
2018/03/12 Python
python3爬虫怎样构建请求header
2018/12/23 Python
Python3与fastdfs分布式文件系统如何实现交互
2020/06/23 Python
python基于exchange函数发送邮件过程详解
2020/11/06 Python
Lookfantastic葡萄牙官方网站:欧洲第一大化妆品零售商
2018/03/17 全球购物
校三好学生主要事迹
2014/01/11 职场文书
《三顾茅庐》教学反思
2014/04/10 职场文书
表彰大会策划方案
2014/05/13 职场文书
2014年优秀党员材料
2014/12/18 职场文书
2016年五一促销广告语
2016/01/28 职场文书
Go遍历struct,map,slice的实现
2021/06/13 Golang
react中的DOM操作实现
2021/06/30 Javascript
一文搞懂PHP中的抽象类和接口
2022/05/25 PHP