网络爬虫--17.【BeautifuSoup4实战】爬取腾讯社招

文章目录

  • 一.要求
  • 二.代码示例

一.要求

以腾讯社招页面来做演示:http://hr.tencent.com/position.php?&start=10#a

使用BeautifuSoup4解析器,将招聘网页上的职位名称、职位类别、招聘人数、工作地点、发布时间,以及每个职位详情的点击链接存储出来。

在这里插入图片描述
在这里插入图片描述

二.代码示例

from bs4 import BeautifulSoup
import urllib
import json    # 使用了json格式存储def tencent():url = 'http://hr.tencent.com/'request = urllib.request.Request(url + 'position.php?&start=10#a')response =urllib.request.urlopen(request)resHtml = response.read()output =open('tencent.json','w')html = BeautifulSoup(resHtml,'lxml')# 创建CSS选择器result = html.select('tr[class="even"]')result2 = html.select('tr[class="odd"]')result += result2items = []for site in result:item = {}name = site.select('td a')[0].get_text()detailLink = site.select('td a')[0].attrs['href']catalog = site.select('td')[1].get_text()recruitNumber = site.select('td')[2].get_text()workLocation = site.select('td')[3].get_text()publishTime = site.select('td')[4].get_text()item['name'] = nameitem['detailLink'] = url + detailLinkitem['catalog'] = catalogitem['recruitNumber'] = recruitNumberitem['publishTime'] = publishTimeitems.append(item)# 禁用ascii编码,按utf-8编码line = json.dumps(items,ensure_ascii=False)output.write(line.encode('utf-8'))output.close()if __name__ == "__main__":tencent()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/451985.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

彻底搞清楚Android中的 Attr

版权声明:本文为sydMobile原创文章,转载请务必注明出处! https://blog.csdn.net/sydMobile/article/details/79978187 相信这个词对于Android开发者来说十分熟悉了,那么你对他到底有多了解呢? 回忆起我刚开始接触Andr…

D. Relatively Prime Graph

Lets call an undirected graph G(V,E)G(V,E) relatively prime if and only if for each edge (v,u)∈E(v,u)∈E GCD(v,u)1GCD(v,u)1 (the greatest common divisor of vv and uu is 11). If there is no edge between some pair of vertices vv and uu then the value of GC…

网络爬虫--19.【Scrapy-Redis实战】分布式爬虫爬取房天下--环境准备

文章目录0. 思路一. 虚拟机Ubuntu0中安装Redis二. 虚拟机Ubuntu1中安装Redis三. Windows服务器上安装Redis四. 安装cmder五. 安装RedisDesktopManager六. 修改Windows中的配置文件redis.windows.conf七. Ubuntu连接Windows上 的Redis服务器-----------------------------------…

tkinter中scale拖拉改变值控件(十一)

scale拖拉改变值控件 使用户通过拖拽改变值 简单的实现: 1 import tkinter2 3 wuya tkinter.Tk() 4 wuya.title("wuya") 5 wuya.geometry("300x2001020") 6 7 8 # 创建对象 9 scale1 tkinter.Scale(wuya, from_0, to100) 10 scale1.pac…

计算机图形学理论(4):缓冲区

本系列根据国外一个图形小哥的讲解为本,整合互联网的一些资料,结合自己的一些理解。 什么是缓冲区? 缓冲区是保存某些数据的临时存储空间。 为什么我们需要缓冲区?原因很简单,当数据量很大时,因为计算机无…

网络爬虫--20.【Scrapy-Redis实战】分布式爬虫获取房天下--代码实现

文章目录一. 案例介绍二.创建项目三. settings.py配置四. 详细代码五. 部署1. windows环境下生成requirements.txt文件2. xshell连接ubuntu服务器并安装依赖环境3. 修改部分代码4. 上传代码至服务器并运行一. 案例介绍 爬取房天下(https://www1.fang.com/&#xff…

同一台电脑安装python2python3

【安装之前,先了解一下概念】 python是什么? Python是一种面向对象的解释型计算机程序设计语言,由荷兰人Guido van Rossum于1989年发明,第一个公开发行版发行于1991年。 Python是纯粹的自由软件, 源代码和解释器CPytho…

程序员的常见健康问题

其实这些问题不仅见于程序员,其他长期经常坐在电脑前的职场人士(比如:网络编辑、站长等),都会有其中的某些健康问题。希望从事这些行业的朋友,对自己的健康问题,予以重视。以下是全文。 我最近…

网络爬虫--21.Scrapy知识点总结

文章目录一. Scrapy简介二. Scrapy架构图三. Scrapy框架模块功能四. 安装和文档五. 创建项目六. 创建爬虫一. Scrapy简介 二. Scrapy架构图 三. Scrapy框架模块功能 四. 安装和文档 中文文档:https://scrapy-chs.readthedocs.io/zh_CN/latest/intro/tutorial.html …

Ubuntu将在明年推出平板及手机系统

4月26日下午消息,知名Linux厂商Canonical今天正式发布Ubuntu 12.04版开源操作系统。Ubuntu中国首席代表于立强透露,针对平板电脑的Ubuntu操作系统将在明年推出。 Ubuntu 12.04版开源操作系统发布 Ubuntu操作系统是一款开源操作系统,主要与OE…

Android Studio 超级简单的打包生成apk

为什么要打包: apk文件就是一个包,打包就是要生成apk文件,有了apk别人才能安装使用。打包分debug版和release包,通常所说的打包指生成release版的apk,release版的apk会比debug版的小,release版的还会进行混…

推荐16款最棒的Visual Studio插件

Visual Studio是微软公司推出的开发环境,Visual Studio可以用来创建Windows平台下的Windows应用程序和网络应用程序,也可以用来创建网络服务、智能设备应用程序和Office插件。 本文介绍16款最棒的Visual Studio扩展: 1. DevColor Extension…

网络爬虫--22.【CrawlSpider实战】实现微信小程序社区爬虫

文章目录一. CrawlSpider二. CrawlSpider案例1. 目录结构2. wxapp_spider.py3. items.py4. pipelines.py5. settings.py6. start.py三. 重点总结一. CrawlSpider 现实情况下,我们需要对满足某个特定条件的url进行爬取,这时候就可以通过CrawlSpider完成。…

怎么安装Scrapy框架以及安装时出现的一系列错误(win7 64位 python3 pycharm)

因为要学习爬虫,就打算安装Scrapy框架,以下是我安装该模块的步骤,适合于刚入门的小白: 一、打开pycharm,依次点击File---->setting---->Project----->Project Interpreter,打开后,可以…

xpath-helper: 谷歌浏览器安装xpath helper 插件

1.下载文件xpath-helper.crx xpath链接:https://pan.baidu.com/s/1dFgzBSd 密码:zwvb,感谢这位网友,我从这拿到了 2.在Google浏览器里边找到这个“扩展程序”选项菜单即可。 3.然后就会进入到扩展插件的界面了,把下载好的离线插件…

网络爬虫--23.动态网页数据抓取

文章目录一. Ajax二. 获取Ajax数据的方式三. seleniumchromedriver获取动态数据四. selenium基本操作一. Ajax 二. 获取Ajax数据的方式 三. seleniumchromedriver获取动态数据 selenium文档:https://selenium-python.readthedocs.io/installation.html 四. sele…

gcc g++安装

2019独角兽企业重金招聘Python工程师标准>>> 安装之前要卸载掉老版本的gcc、g sudo apt-get remove gccgcc-xx #可能有多个版本,都要删掉 sudo apt-get remove g sudo apt-get install gcc 安装g编译器,可以通过命令 sudo apt-get installb…

网络爬虫--24.【selenium实战】实现拉勾网爬虫之--分析接口获取数据

文章目录一. 思路概述二. 分析数据接口三. 详细代码一. 思路概述 1.拉勾网采用Ajax技术,加载网页时会向后端发送Ajax异步请求,因此首先找到数据接口; 2.后端会返回json的数据,分析数据,找到单个招聘对应的positionId…

bzoj 1999: [Noip2007]Core树网的核【树的直径+单调队列】

我要懒死了&#xff0c;所以依然是lyd的课件截图 注意是min{max(max(d[uk]),dis(u1,ui),dis(uj,un))}&#xff0c;每次都从这三个的max里取min #include<iostream> #include<cstdio> using namespace std; const int N500005; int n,m,h[N],cnt,d[N],s,t,mx,f[N],a…