幽灵资源网 Design By www.bzswh.com
目的:获取腾讯社招这个页面的职位名称及超链接 职位类别 人数 地点和发布时间
要求:使用bs4进行解析,并把结果以json文件形式存储
注意:如果直接把python列表没有序列化为json数组,写入到json文件,会产生中文写不进去到文件,所以要序列化并进行utf-8编码后写入文件。
# -*- coding:utf-8 -*- import requests from bs4 import BeautifulSoup as bs import json url = 'https://hr.tencent.com/position.php"odd"]') result2 = soup.select('tr[class="even"]') # 列表拼接 l = [1,2] + [3,4],则列表l为[1,2,3,4] result = result1 + result2 # 把数据存放在列表里面,列表的每个元素都为一个字典 l = [] data = {} for item in result: # 获取标签的文本内容 job = item.find_all('a')[0].get_text().encode('utf-8') category = item.find_all('td')[1].get_text().encode('utf-8') number = item.find_all('td')[2].get_text().encode('utf-8') address = item.find_all('td')[3].get_text().encode('utf-8') public_time = item.find_all('td')[4].get_text().encode('utf-8') # 获取标签的属性值 link = item.find_all('a')[0].attrs['href'] fulllink = ('https://hr.tencent.com/' + link).encode('utf-8') data['job'] = job data['category'] = category data['number'] = number data['address'] = address data['public_time'] = public_time data['fulllink'] = fulllink l.append(data) # 原来中文写不到文件里面的报错原因,没把python列表序列化为json数组 # with open('tencent.json','a') as f: # f.write(str(data) + '\n') # 方法1存储数据,上面字典的值不用先进行utf-8编码 # 把数据以json文件形式存储 # f = open('tencent.json','a') # 把python列表序转化为json对象。本地操作常用的是load dump。网络操作常用的loads dumps,而loads常用来把json格式转化为python格式,dumps把python格式序列为json格式 # dictdata = json.dumps(l,ensure_ascii=False) # 把json对象写入json文件 # f.write(dictdata.encode('utf-8')) # f.close() # 把数据存入tencent.json文件内 json.dump(l,open('tencent.json','a'),ensure_ascii=False)
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
幽灵资源网 Design By www.bzswh.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
幽灵资源网 Design By www.bzswh.com
暂无评论...
P70系列延期,华为新旗舰将在下月发布
3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。
而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?
根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。