python数据爬下来保存的位置

昨天下班后忽然兴起想写一个爬虫抓抓网页上的东西。花了一个钟简单学习了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数据爬下来保存在哪里的详细内容,感谢大家的学习和对我们的支持。

时间: 2020-02-15

Python使用Pickle模块进行数据保存和读取的讲解

pickle 是一个 python 中, 压缩/保存/提取 文件的模块,字典和列表都是能被保存的. 但必须注意的是python2以ASCII形式保存,而在python3中pickle是使用转换二进制的数据压缩方法保存数据 所以,在保存或者读取数据的时候,打开文件应该使用'wb' 'rb'的方式 import pickle a = 'owoof' with open('111.pkl', 'wb') as file: pickle.dump(a, file) 在Pickle模块中还有dumps()

python 将数据保存为excel的xls格式(实例讲解)

python提供一个库 xlwt ,可以将一些数据 写入excel表格中,十分的方便.贴使用事例如下. #引入xlwt模块(提前pip下载好) import xlwt #使用workbook方法,创建一个新的工作簿 book = xlwt.Workbook(encoding='utf-8',style_compression=0) #添加一个sheet,名字为mysheet,参数overwrite就是说可不可以重复写入值,就是当单元格已经非空,你还要写入 sheet = book.add_she

python从ftp下载数据保存实例

<hadoop权威指南>的天气数据可以在ftp://ftp3.ncdc.noaa.gov/pub/data/noaa下载,在网上看到这个数据好开心,打开ftp发现个问题,呀呀,这么多文件啊,我一个个去点另存为,得点到啥时候啊,迅雷应该有批量下载,只是我没找到,估计是我浏览器把迅雷禁掉了,干脆自己用python写一个实现下载好了,网上早了一下,发现很简单啊 复制代码 代码如下: #!/usr/bin/python#-*- coding: utf-8 -*- from ftplib import

python爬取网站数据保存使用的方法

编码问题因为涉及到中文,所以必然地涉及到了编码的问题,这一次借这个机会算是彻底搞清楚了.问题要从文字的编码讲起.原本的英文编码只有0~255,刚好是8位1个字节.为了表示各种不同的语言,自然要进行扩充.中文的话有GB系列.可能还听说过Unicode和UTF-8,那么,它们之间是什么关系呢?Unicode是一种编码方案,又称万国码,可见其包含之广.但是具体存储到计算机上,并不用这种编码,可以说它起着一个中间人的作用.你可以再把Unicode编码(encode)为UTF-8,或者GB,再存储到计算机

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

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.1

Python3将数据保存为txt文件的方法

Python3将数据保存为txt文件的方法,具体内容如下所示: f = open("data/model_Weight.txt",'a') #若文件不存在,系统自动创建.'a'表示可连续写入到文件,保留原内容,在原 #内容之后写入.可修改该模式('w+','w','wb'等) f.write("hello,sha") #将字符串写入文件中 f.write("\n") #换行 if __name__=='__main__': fw = open(&

VB打开与保存txt文件的方法

本文实例讲述了VB打开与保存txt文件的方法.分享给大家供大家参考.具体如下: Private Sub cmdsave_Click() Dim filelocation As String ' loads save as box commondialog1.ShowSave filelocation = commondialog1.FileName ' append saves over file if it assists Open filelocation For Append As #1

C#简单读写txt文件的方法

本文实例讲述了C#简单读写txt文件的方法.分享给大家供大家参考,具体如下: //write txt StringBuilder builder = new StringBuilder(); FileStream fs = new FileStream(saveFileName, FileMode.Create); StreamWriter sw = new StreamWriter(fs, Encoding.Default); for (int i = 0; i < ds.Tables[0].

python使用PyGame绘制图像并保存为图片文件的方法

本文实例讲述了python使用PyGame绘制图像并保存为图片文件的方法.分享给大家供大家参考.具体实现方法如下: ''' pg_draw_circle_save101.py draw a blue solid circle on a white background save the drawing to an image file for result see http://prntscr.com/156wxi tested with Python 2.7 and PyGame 1.9.2

python保存字符串到文件的方法

本文实例讲述了python保存字符串到文件的方法.分享给大家供大家参考.具体实现方法如下: def save(filename, contents): fh = open(filename, 'w') fh.write(contents) fh.close() save('file.name', 'some stuff') 希望本文所述对大家的Python程序设计有所帮助.

Java导出txt文件的方法

本文实例讲述了Java导出txt文件的方法.分享给大家供大家参考.具体如下: 例子一 /** * export导出文件 */ @RequestMapping(value="/grab/export/csv",method={RequestMethod.GET}) public void exportCsv(HttpServletRequest request,HttpServletResponse response){ String userId = ServletRequestUti

C#逐行读取txt文件的方法

本文实例讲述了c#逐行读取txt文件的方法,是C#程序设计中非常实用的技巧,分享给大家供大家参考. 具体方法如下: private void importTxtNoAdd() { string line; string sFileName = ""; if (openFileDialog1.ShowDialog() == DialogResult.OK) { sFileName = openFileDialog1.FileName; dtTemp.Rows.Clear(); iXH =

Python3实现从指定路径查找文件的方法

本文实例讲述了Python3实现从指定路径查找文件的方法.分享给大家供大家参考.具体实现方法如下: 这里给定一个搜索路径,根据这个路径请求和请求的文件名,找到第一个符合要求的文件 import os def search_file(file_name, search_path, pathsep = os.pathsep): for path in search_path.split(pathsep): candidate = os.path.join(path, file_name) if os

Python实现将目录中TXT合并成一个大TXT文件的方法

本文实例讲述了Python实现将目录中TXT合并成一个大TXT文件的方法.分享给大家供大家参考.具体如下: 在网上下了一个dota的英雄攻略,TXT格式,每个英雄一个文件,看得疼,就写了一个小东西,合并一下. #coding=gbk import os import sys import glob def dirTxtToLargeTxt(dir,outputFileName): '''从dir目录下读入所有的TXT文件,将它们写到outputFileName里去''' #如果dir不是目录返回

Python使用cx_Oracle模块将oracle中数据导出到csv文件的方法

本文实例讲述了Python使用cx_Oracle模块将oracle中数据导出到csv文件的方法.分享给大家供大家参考.具体实现方法如下: # Export Oracle database tables to CSV files # FB36 - 201007117 import sys import csv import cx_Oracle connection = raw_input("Enter Oracle DB connection (uid/pwd@database) : "

php限制上传文件类型并保存上传文件的方法

本文实例讲述了php限制上传文件类型并保存上传文件的方法.分享给大家供大家参考.具体如下: 下面的代码演示了php中如何获取用户上传的文件,并限制文件类型的一般图片文件,最后保存到服务器 <?php $allowedExts = array("gif", "jpeg", "jpg", "png"); $extension = end(explode(".", $_FILES["file&qu