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操作摄像头截图实现远程监控的例子
Mar 25 Python
用Python编写一个简单的俄罗斯方块游戏的教程
Apr 03 Python
python tensorflow基于cnn实现手写数字识别
Jan 01 Python
pandas groupby 分组取每组的前几行记录方法
Apr 20 Python
浅谈Series和DataFrame中的sort_index方法
Jun 07 Python
如何在python字符串中输入纯粹的{}
Aug 22 Python
Python3实现的回文数判断及罗马数字转整数算法示例
Mar 27 Python
python实现微信定时每天和女友发送消息
Apr 29 Python
Python3enumrate和range对比及示例详解
Jul 13 Python
基于python分析你的上网行为 看看你平时上网都在干嘛
Aug 13 Python
Python多线程正确用法实例解析
May 30 Python
python套接字socket通信
Apr 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
咖啡知识 咖啡养豆要养多久 排气又是什么
2021/03/06 新手入门
一个可以找出源代码中所有中文的工具
2006/10/25 PHP
AJAX for PHP简单表数据查询实例
2007/01/02 PHP
PHP取进制余数函数代码
2012/01/19 PHP
PHP常用特殊运算符号和函数总结(php新手入门必看)
2013/02/02 PHP
利用jQuery 实现GridView异步排序、分页的代码
2010/02/06 Javascript
JavaScript 语言的递归编程
2010/05/18 Javascript
js定时器怎么写?就是在特定时间执行某段程序
2013/10/11 Javascript
jquery插件jquery倒计时插件分享
2013/12/27 Javascript
jquery禁用右键示例
2014/04/28 Javascript
Jquery 实现grid绑定模板
2015/01/28 Javascript
jquery实现滑屏大图定时收缩为小banner图片的广告代码
2015/09/02 Javascript
手机端转盘抽奖代码分享
2015/09/10 Javascript
全面了解js中的script标签
2016/07/04 Javascript
Node.js测试中的Mock文件系统详解
2016/11/21 Javascript
vue2.x 父组件监听子组件事件并传回信息的方法
2017/07/17 Javascript
Angular2+如何去除url中的#号详解
2017/12/20 Javascript
vue二级菜单导航点击选中事件的方法
2018/09/12 Javascript
jQuery实现的鼠标拖动浮层功能示例【拖动div等任何标签】
2018/12/29 jQuery
详解Vue+Element的动态表单,动态表格(后端发送配置,前端动态生成)
2019/04/20 Javascript
Vue.js@2.6.10更新内置错误处机制Fundebug同步支持相应错误监控
2019/05/13 Javascript
微信小程序实现下拉刷新动画
2019/06/21 Javascript
小程序自定义模板实现吸顶功能
2020/01/08 Javascript
js实现上传按钮并显示缩略图小轮子
2020/05/04 Javascript
vue+Element中table表格实现可编辑(select下拉框)
2020/05/21 Javascript
[01:17:47]TNC vs VGJ.S 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
Python3字符串学习教程
2015/08/20 Python
详解Django之auth模块(用户认证)
2018/04/17 Python
Python for循环通过序列索引迭代过程解析
2020/02/07 Python
英国一家专门出售品牌鞋子的网站:Allsole
2016/08/07 全球购物
德国运动营养和健身网上商店:Myprotein.de
2018/07/18 全球购物
Foot Locker德国官方网站:美国运动服和鞋类零售商
2018/11/01 全球购物
住房公积金接收函
2014/01/09 职场文书
教师查摆问题及整改措施
2014/10/11 职场文书
打架检讨书
2015/01/27 职场文书
电力企业职工培训心得体会
2016/01/11 职场文书