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中使用ElementTree解析XML示例
Jun 02 Python
Python的Django框架下管理站点的基本方法
Jul 17 Python
python中异常捕获方法详解
Mar 03 Python
Python处理Excel文件实例代码
Jun 20 Python
基于Python在MacOS上安装robotframework-ride
Dec 28 Python
python调用c++传递数组的实例
Feb 13 Python
python scrapy爬虫代码及填坑
Aug 12 Python
python如何使用Redis构建分布式锁
Jan 16 Python
在tensorflow中实现屏蔽输出的log信息
Feb 04 Python
记一次pyinstaller打包pygame项目为exe的过程(带图片)
Mar 02 Python
Python3自定义http/https请求拦截mitmproxy脚本实例
May 11 Python
python实现经典排序算法的示例代码
Feb 07 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效率,提高php性能的一些方法
2011/03/24 PHP
免费的ip数据库淘宝IP地址库简介和PHP调用实例
2014/04/08 PHP
ECshop 迁移到 PHP7版本时遇到的兼容性问题
2016/02/15 PHP
php实现用户注册密码的crypt加密
2017/06/08 PHP
utf8的编码算法 转载
2006/12/27 Javascript
firefox中用javascript实现鼠标位置的定位
2007/06/17 Javascript
jQuery $.data()方法使用注意细节
2012/12/31 Javascript
JQEasy-ui在IE9以下版本中二次加载的问题分析及处理方法
2014/06/23 Javascript
JavaScript实现简单获取当前网页网址的方法
2015/11/09 Javascript
JS及PHP代码编写八大排序算法
2016/07/12 Javascript
jQuery实现的模拟弹出窗口功能示例
2016/11/24 Javascript
基于Vue实例对象的数据选项
2017/08/09 Javascript
微信小程序三级联动选择器使用方法
2020/05/19 Javascript
解决VUEX兼容IE上的报错问题
2018/03/01 Javascript
详解KOA2如何手写中间件(装饰器模式)
2018/10/11 Javascript
vue+element加入签名效果(移动端可用)
2019/06/17 Javascript
对Layer UI 模块化的用法详解
2019/09/26 Javascript
vue中 数字相加为字串转化为数值的例子
2019/11/07 Javascript
JavaScript创建表格的方法
2020/04/13 Javascript
[02:56]DOTA2矮人直升机 英雄基础教程
2013/11/26 DOTA
老生常谈Python基础之字符编码
2017/06/14 Python
django项目环境搭建及在虚拟机本地创建django项目的教程
2019/08/02 Python
python使用if语句实现一个猜拳游戏详解
2019/08/27 Python
解决安装新版PyQt5、PyQT5-tool后打不开并Designer.exe提示no Qt platform plugin的问题
2020/04/24 Python
python3获取控制台输入的数据的具体实例
2020/08/16 Python
Html5移动端弹幕动画实现示例代码
2018/08/27 HTML / CSS
h5网页水印SDK的实现代码示例
2019/02/19 HTML / CSS
美国内衣第一品牌:Hanes(恒适)
2016/07/29 全球购物
外企C语言笔试题
2013/11/10 面试题
如何写一个Java类既可以用作applet也可以用作java应用
2016/01/18 面试题
成人继续教育实施方案
2014/03/01 职场文书
启动仪式策划方案
2014/06/14 职场文书
导游词400字
2015/02/13 职场文书
销售员自我评价
2015/03/11 职场文书
班主任工作总结范文
2015/08/13 职场文书
php中pcntl_fork详解
2021/04/01 PHP