python数据爬下来保存的位置


Posted in Python onFebruary 17, 2020

昨天下班后忽然兴起想写一个爬虫抓抓网页上的东西。花了一个钟简单学习了python的基础语法,然后参照网上的例子自己写了个爬虫。

python数据爬下来保存在本地,一般是文件或数据库中,但是文件形式相比要更加简单,如果只是自己写爬虫玩,可以用文件形式来保存数据。

#coding=utf-8
import urllib.request
import re
import os
 
'''
Urllib 模块提供了读取web页面数据的接口,我们可以像读取本地文件一样读取www和ftp上的数据
urlopen 方法用来打开一个url
read方法 用于读取Url上的数据
'''
 
def getHtml(url):
  page = urllib.request.urlopen(url);
  html = page.read();
  return html;
 
def getImg(html):
  imglist = re.findall('img src="(http.*?)"',html
  return imglist
 
html = getHtml("https://www.zhihu.com/question/34378366").decode("utf-8");
imagesUrl = getImg(html);
 
if os.path.exists("D:/imags") == False:
  os.mkdir("D:/imags");
   
count = 0;
for url in imagesUrl:
  print(url)
  if(url.find('.') != -1):
    name = url[url.find('.',len(url) - 5):];
    bytes = urllib.request.urlopen(url);
    f = open("D:/imags/"+str(count)+name, 'wb');
    f.write(bytes.read());
    f.flush();
    f.close();
    count+=1

经测试,基本功能还是可以实现的。花的较多的时间就是正则匹配哪里,因为自己对正则表达式也不是非常熟悉。所以还是花了点时间。

注:上面的程序基于 python 3.5。python3 和 python2 还是有些区别的。我刚开始看基础语法的时候就栽了一些坑里。

以上就是python数据爬下来保存在哪里的详细内容,感谢大家的学习和对三水点靠木的支持。

Python 相关文章推荐
Python中的Numpy入门教程
Apr 26 Python
Python入门篇之正则表达式
Oct 20 Python
Python脚本处理空格的方法
Aug 08 Python
python中pylint使用方法(pylint代码检查)
Apr 06 Python
使用TensorFlow实现SVM
Sep 06 Python
python 生成器和迭代器的原理解析
Oct 12 Python
opencv-python 提取sift特征并匹配的实例
Dec 09 Python
Python的对象传递与Copy函数使用详解
Dec 26 Python
在python中logger setlevel没有生效的解决
Feb 21 Python
django 数据库 get_or_create函数返回值是tuple的问题
May 15 Python
Python+unittest+requests+excel实现接口自动化测试框架
Dec 23 Python
pycharm 实现调试窗口恢复
Feb 05 Python
使用TFRecord存取多个数据案例
Feb 17 #Python
从多个tfrecord文件中无限读取文件的例子
Feb 17 #Python
Python3连接Mysql8.0遇到的问题及处理步骤
Feb 17 #Python
python3连接MySQL8.0的两种方式
Feb 17 #Python
Win10下安装并使用tensorflow-gpu1.8.0+python3.6全过程分析(显卡MX250+CUDA9.0+cudnn)
Feb 17 #Python
Windows下实现将Pascal VOC转化为TFRecords
Feb 17 #Python
tensorflow生成多个tfrecord文件实例
Feb 17 #Python
You might like
编译php 5.2.14+fpm+memcached(具体操作详解)
2013/06/18 PHP
PHP文件上传问题汇总(文件大小检测、大文件上传处理)
2015/12/24 PHP
jQuery+PHP实现图片上传并提交功能
2020/07/27 PHP
PHP safe_mode开启对于PHP系统函数有什么影响
2020/11/10 PHP
prototype 的说明 js类
2006/09/07 Javascript
jQuery温习篇 强大的JQuery选择器
2010/04/24 Javascript
jquery中邮箱地址 URL网站地址正则验证实例代码
2013/09/15 Javascript
JavaScript禁止页面操作的示例代码
2013/12/17 Javascript
文本框文本自动补全效果示例分享
2014/01/19 Javascript
JavaScript中Object.prototype.toString方法的原理
2016/02/24 Javascript
Bootstrap学习笔记之css组件(3)
2016/06/07 Javascript
sea.js常用的api简易文档
2016/11/15 Javascript
vue做移动端适配最佳解决方案(亲测有效)
2018/09/04 Javascript
在vue中安装使用vux的教程详解
2018/09/16 Javascript
jQuery实现的中英文切换功能示例
2019/01/11 jQuery
微信JS-SDK updateAppMessageShareData安卓不能自定义分享详解
2019/03/29 Javascript
详解如何理解vue的key属性
2019/04/14 Javascript
layui select 禁止点击的实现方法
2019/09/05 Javascript
JS window对象简单操作完整示例
2020/01/14 Javascript
如何在postman中添加cookie信息步骤解析
2020/06/30 Javascript
vuex管理状态仓库使用详解
2020/07/29 Javascript
[33:23]Secret vs Serenity 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
Pandas的read_csv函数参数分析详解
2019/07/02 Python
python交易记录整合交易类详解
2019/07/03 Python
Django基础知识 URL路由系统详解
2019/07/18 Python
如何让python的运行速度得到提升
2020/07/08 Python
python em算法的实现
2020/10/03 Python
Maisons du Monde德国:法国家具和装饰的市场领导者
2019/07/26 全球购物
计算机开发个人求职信范文
2013/09/26 职场文书
机械工程师岗位职责
2014/06/16 职场文书
党性观念心得体会
2014/09/03 职场文书
没有孩子的离婚协议书怎么写
2014/09/17 职场文书
一篇文章弄懂MySQL查询语句的执行过程
2021/05/07 MySQL
详解Python中*args和**kwargs的使用
2022/04/07 Python
Nginx配置之禁止指定IP访问
2022/05/02 Servers
Nginx 配置 HTTPS的详细过程
2022/05/30 Servers