Python爬取数据保存为Json格式的代码示例


Posted in Python onApril 09, 2019

python爬取数据保存为Json格式

代码如下:

#encoding:'utf-8'
import urllib.request
from bs4 import BeautifulSoup
import os
import time
import codecs
import json
#找到网址
def getDatas():
  # 伪装
  header={'User-Agent':"Mozilla/5.0 (X11; CrOS i686 2268.111.0) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.57 Safari/536.11"}
  # url="https://movie.douban.com/top250"
  url="file:///E:/scrapy/2018-04-27/movie/movie.html"
  ret=urllib.request.Request(url=url,headers=header)
  # 打开网页
  res=urllib.request.urlopen(ret)
  # 转化格式
  response=BeautifulSoup(res,'html.parser')
  # 找到想要数据的父元素
  datas=response.find_all('div',{'class':'item'})
  # print(datas)
  #创建存放数据的文件夹
  folder_name="output"
  if not os.path.exists(folder_name):
      os.mkdir(folder_name)
  # 定义文件
  current_time=time.strftime('%Y-%m-%d',time.localtime())
  file_name="move"+current_time+".json"
  # 文件路径
  file_path=folder_name+"/"+file_name
  for item in datas:
    # print(item)
    dict1={}
    dict1['rank']=item.find('div',{'class':'pic'}).find('em').get_text()
    dict1['title']=item.find('div',{'class':'info'}).find('div',{'class':'hd'}).find('a').find('span',{'class':'title'}).get_text()
    dict1['picUrl']=item.find('div',{'class':'pic'}).find('a').find('img').get('src')
    # print(picUrl)
    # 保存数据为json格式
    try:
      with codecs.open(file_path,'a',encoding="utf-8") as fp:
        fp.write(json.dumps(dict1,ensure_ascii=False)+",\n")
    except IOError as err:
      print('error'+str(err))
    finally:
      fp.close()
  pass
getDatas()
# 爬取数据

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。如果你想了解更多相关内容请查看下面相关链接

Python 相关文章推荐
Python批量创建迅雷任务及创建多个文件
Feb 13 Python
玩转python爬虫之cookie使用方法
Feb 17 Python
Django中间件工作流程及写法实例代码
Feb 06 Python
django的ORM操作 增加和查询
Jul 26 Python
Python使用matplotlib绘制三维参数曲线操作示例
Sep 10 Python
python实现代码统计程序
Sep 19 Python
python实现七段数码管和倒计时效果
Nov 23 Python
浅谈python 调用open()打开文件时路径出错的原因
Jun 05 Python
python中plt.imshow与cv2.imshow显示颜色问题
Jul 16 Python
python常量折叠基础知识点讲解
Feb 28 Python
python库sklearn常用操作
Aug 23 Python
python基础之模块的导入
Oct 24 Python
python实现QQ空间自动点赞功能
Apr 09 #Python
Python实现的多进程拷贝文件并显示百分比功能示例
Apr 09 #Python
Python使用crontab模块设置和清除定时任务操作详解
Apr 09 #Python
Python实现的读取文件内容并写入其他文件操作示例
Apr 09 #Python
Python实现根据日期获取当天凌晨时间戳的方法示例
Apr 09 #Python
Python匿名函数及应用示例
Apr 09 #Python
用Python中的turtle模块画图两只小羊方法
Apr 09 #Python
You might like
PHP 变量定义和变量替换的方法
2009/07/30 PHP
php中用foreach来操作数组的代码
2011/07/17 PHP
PHP基于php_imagick_st-Q8.dll实现JPG合成GIF图片的方法
2014/07/11 PHP
php发送http请求的常用方法分析
2016/11/08 PHP
关于javascript中this关键字(翻译+自我理解)
2010/10/20 Javascript
按钮JS复制文本框和表格的代码
2011/04/01 Javascript
js Map List 遍历使用示例
2013/07/10 Javascript
JS获取文本框,下拉框,单选框的值的简单实例
2014/02/26 Javascript
js判断上传文件类型判断FileUpload文件类型代码
2014/05/20 Javascript
nodejs爬虫抓取数据乱码问题总结
2015/07/03 NodeJs
基于MVC+EasyUI的web开发框架之使用云打印控件C-Lodop打印页面或套打报关运单信息
2016/08/29 Javascript
Node.js 异步异常的处理与domain模块解析
2017/05/10 Javascript
Express的HTTP重定向到HTTPS的方法
2018/06/06 Javascript
Vue中使用 setTimeout() setInterval()函数的问题
2018/09/13 Javascript
Vue.js+cube-ui(Scroll组件)实现类似头条效果的横向滚动导航条
2019/06/24 Javascript
node 解析图片二维码的内容代码实例
2019/09/11 Javascript
vue.js实现左边导航切换右边内容
2019/10/21 Javascript
VUEX-action可以修改state吗
2019/11/19 Javascript
JavaScript中的相等操作符使用详解
2019/12/21 Javascript
基于Element的组件改造的树形选择器(树形下拉框)
2020/02/27 Javascript
[05:39]2014DOTA2西雅图国际邀请赛 淘汰赛7月14日TOPPLAY
2014/07/14 DOTA
快速了解Python相对导入
2018/01/12 Python
http请求 request失败自动重新尝试代码示例
2018/01/25 Python
Django 创建新App及其常用命令的实现方法
2019/08/04 Python
python 中不同包 类 方法 之间的调用详解
2020/03/09 Python
opencv 图像礼帽和图像黑帽的实现
2020/07/07 Python
利用python进行文件操作
2020/12/04 Python
草莓网官网:StrawberryNET
2019/08/21 全球购物
印尼在线旅游门户网站:NusaTrip
2019/11/01 全球购物
自动化工程专业个人应聘自荐信
2013/09/26 职场文书
学雷锋演讲稿汇总
2014/05/10 职场文书
公司董事长岗位职责
2014/06/08 职场文书
解除聘用合同证明书范本
2014/09/11 职场文书
2014年工程师工作总结
2014/11/25 职场文书
2019最新劳动仲裁申请书!
2019/07/08 职场文书
MySQL分区表管理命令汇总
2022/03/21 MySQL