Python爬虫入门 | 6 将爬回来的数据存到本地

python爬虫数据保存到本地各种格式的方法 最近爬虫又解决了很多问题,算是保存这部分的吧。 首先,我们如果想要抓取本地txt文件中的内容拿到特定网址去搜索。然后爬取搜索结果的话,这个很简单: f=open('C://Python27//1.txt')           #只需要通过这句代码打开你本地对应路径的文件就OK 但是如果你想要打开excel表格呢?这里就需要下载xlrd库。百度搜索就可以,解压。在cmd中进入解压文件夹然后输 阅读详情

 

1.用Python语句存储数据

写文件时,我们主要用到 with open() 语句:

with open(name,mode,encoding) as file:
  file.write()
  # 注意,with open() 后面的语句有一个缩进

name:包含文件名称的字符串,比如:‘xiaozhu.txt’;
mode:决定了打开文件的模式,只读/写入/追加等;
encoding:表示我们要写入数据的编码,一般为 utf-8 或者 gbk ;
file:表示我们在代码中对文件的命名。

 
用我们前面爬的小猪的例子来看一下,实际是什么样的:

from lxml import etree
import requests
import time

with open('/Users/mac/Desktop/xzzf.txt','w',encoding='utf-8') as f:
    for a in range(1,6):
        url = 'http://cd.xiaozhu.com/search-duanzufang-p{}-0/'.format(a)
        data = requests.get(url).text

        s=etree.HTML(data)
        file=s.xpath('//*[@id="page_list"]/ul/li')
        time.sleep(3)

        for div in file:
            title=div.xpath("./div[2]/div/a/span/text()")[0]
            price=div.xpath("./div[2]/span[1]/i/text()")[0]
            scrible=div.xpath("./div[2]/div/em/text()")[0].strip()
            pic=div.xpath("./a/img/@lazy_src")[0]

            f.write("{},{},{},{}\n".format(title,price,scrible,pic))

 
将写入的文件名 xzzf.txt,如果没有将自动创建。

/Users/mac/Desktop/xzzf.txt

在前面加了一个桌面的路径,它将存在桌面,如果不加路径,它将存在你当前工作目录中。

w:只写的模式,如果没有文件将自动创建;
encoding=’utf-8’:指定写入文件的编码为:utf-8,一般指定utf-8即可;

f.write("{}  {}  {}  {}\n".format(title,price,scrible,pic))
#将 title,price,scrible,pic 的值写入文件

 
来看一下存下来的数据是怎样的:

 
如果你没有指定文件路径,怎么找写在本地的文件呢?给你两种方法:

  1. 在 win10 中打开小娜(cortana),搜索你的文件名即可。

  1. 推荐软件“everything”,查询文件更方便快捷。

这个软件非常小,百度很容易找到,但确实是神器用了你会回来感谢我的~

 
所以还是建议你在写代码的时候,老老实实在文件名前面加上你想存放的路径。什么,你连路径怎么写都不知道?好吧,比如我想把文件存在桌面,那么怎么查看路径?

随便找一个文档,比如桌面的文档, 右键 >“属性”,“位置”后面的信息,就是该文档所在的路径了。

 

2.文件存为CSV格式

当然,你也可以将文件存为 .csv 格式,在 with open() 语句后更改文件后缀即可。

from lxml import etree
import requests
import time

with open('/Users/mac/Desktop/xiaozhu.csv','w',encoding='utf-8') as f:
    for a in range(1,6):
        url = 'http://cd.xiaozhu.com/search-duanzufang-p{}-0/'.format(a)
        data = requests.get(url).text

        s=etree.HTML(data)
        file=s.xpath('//*[@id="page_list"]/ul/li')
        time.sleep(3)

        for div in file:
            title=div.xpath("./div[2]/div/a/span/text()")[0]
            price=div.xpath("./div[2]/span[1]/i/text()")[0]
            scrible=div.xpath("./div[2]/div/em/text()")[0].strip()
            pic=div.xpath("./a/img/@lazy_src")[0]

            f.write("{},{},{},{}\n".format(title,price,scrible,pic))

另外,需要注意的是:CSV 每个字段之间要用逗号隔开,所以这里把之前的空格改为了逗号。

 
CSV 文件怎么打开?

一般情况下,用记事本就可以直接打开,如果你直接用 Excel 打开,很有肯能会出现乱码,就像下面这样:

 
Excel 打开 CSV 出现乱码怎么办?

  1. 在记事本中打开文件
  2. 另存为 – 选择编码为“ANSI”

 
再来看看之前的豆瓣TOP250图书写入文件:

from lxml import etree
import requests
import time

with open('/Users/mac/Desktop/top250.csv','w',encoding='utf-8') as f:
    for a in range(10):
        url = 'https://book.douban.com/top250?start={}'.format(a*25)
        data = requests.get(url).text

        s=etree.HTML(data)
        file=s.xpath('//*[@id="content"]/div/div[1]/div/table')
        time.sleep(3)

        for div in file:
            title = div.xpath("./tr/td[2]/div[1]/a/@title")[0]
            href = div.xpath("./tr/td[2]/div[1]/a/@href")[0]
            score=div.xpath("./tr/td[2]/div[2]/span[2]/text()")[0]
            num=div.xpath("./tr/td[2]/div[2]/span[3]/text()")[0].strip("(").strip().strip(")").strip()
            scrible=div.xpath("./tr/td[2]/p[2]/span/text()")

            if len(scrible) > 0:
                f.write("{},{},{},{},{}\n".format(title,href,score,num,scrible[0]))
            else:
                f.write("{},{},{},{}\n".format(title,href,score,num))

 
最后存下来的数据是这样的:

 
好了,这节课就到这里!

白白~

如果你想有专业老师授课、有系统性知识、有实时在线答疑的老师的话,可以加入我们的课程《Python爬虫(入门+进阶)》。

下节预告:Python爬虫入门 | 7 分类爬取豆瓣电影,解决动态加载问题

完整7节课程目录:
Python爬虫入门 | 1 Python环境的安装
Python爬虫入门 | 2 爬取豆瓣电影信息
Python爬虫入门 | 3 爬虫必备Python知识
Python爬虫入门 | 4 爬取豆瓣TOP250图书信息
Python爬虫入门 | 5 爬取小猪短租租房信息
Python爬虫入门 | 6 将爬回来的数据存到本地
Python爬虫入门 | 7 分类爬取豆瓣电影,解决动态加载问题

网络爬虫——python爬取豆瓣评论 网络爬虫,又被称为网络蜘蛛(Web Spider)、网络机器人等。它根据网页地址(URL)爬取网页内容,网页地址(URL)就是我们在浏览器中输入的网站链接。例如:https://www.baidu.com;网络爬虫不仅能够复制网页信息和下载音视频,还可以做到网站的模拟登录和行为链执行。由于需要爬取的网站大多需要先登录才能正常访问,或者需要登录后的cookie值才能继续爬取,所以需要对网站模拟登录。有些网站设置了Referer防盗链,所以需要执行网页浏览行为链。 阅读详情

相关推荐

什么是网络爬虫?有什么用?怎么爬?

随着大数据时代的来临,网络爬虫在互联网中的地位将越来越重要。互联网中的数据是海量的,如何自动高效地获取互联网中我们感兴趣的信息并为我们所用是一个重要的问题,而爬虫技术就是为了解决这些问题而生的。如果只是做搜索引擎,那么感兴趣的信息就是互联网中尽可能多的高质量网页;如果要获取某一垂直领域的数据或者有明确的检索需求,那么感兴趣的信息就是根据我们的检索和需求所定位的这些信息,此时,需要过滤掉一些无用信息。前者我们称为通用网络爬虫,后者我们称为聚焦网络爬虫。

m0_72282564的博客 1980

下载数据集

数据集下载

m0_74430521的博客 1494

【基础】【Python网络爬虫】【1.认识爬虫】什么是爬虫,爬虫分类,爬虫可以做什么

认识爬虫 1.什么是爬虫 2.爬虫可以做什么 3.为什么用 Ptyhon 爬虫 4.爬虫的分类 通用爬虫 聚焦爬虫 功能爬虫 增量式爬虫 分布式爬虫 5.爬虫的矛与盾(重点) 6.盗亦有道的君子协议robots 7.爬虫合法性探究

weixin_43612602的博客 2531

数据竞赛——0

“达观杯”文本智能处理挑战赛第一次 数据竞赛获取数据读取数据数据分割具体实现 第一次 数据竞赛 这是我在学习完Python和机器学习的基本知识后的第一次实践,更是一次成长。 获取数据 在DataCastle中注册,并且报名“达观杯”文本智能处理挑战赛(已经结束,但是任然可以使用),下载比赛数据。 读取数据 数据分为两部分训练数据和测试数据都是CSV格式的,首先通过利用Excel打开数据来进行观察数...

小鬼漫步的博客 728

Python网络爬虫的反爬策略

网络爬虫的反爬机制是网站保护自身资源的重要手段,而爬虫开发者则需要不断应对这些反爬策略。通过伪装User-Agent、使用代理IP、处理验证码、解析动态加载内容和管理Cookie等技巧,可以有效提高爬虫的成功率和稳定性。然而,在爬取数据时,应遵守网站的使用条款和法律法规,尊重网站的知识产权和隐私政策。

shejizuopin的博客 1789

爬取拉勾网的数据并保存到excel中

这个例子用python爬取拉勾网上的数据,并保存到excel中,注意header中的数据最好自己用浏览器得到,并替换一下。

网络爬虫之数据保存

通过案例带你了解网络爬虫的数据保存方式。

Uncle_wangcode的博客 2047

抖音直播小风车跳转企业微信全攻略:企业号申请+落地页配置详解

本文详细解析了抖音直播小风车跳转企业微信的全流程,包括企业号申请、小风车配置和落地页优化。通过实战指南,帮助企业高效实现私域流量沉淀,提升直播转化率,特别适合电商和营销从业者参考。

weixin_29289821的博客 614

【Python】用xpath爬取网页文字保存到txt中(含有文字解码代码)

hello😁,大家好,最近新学习了xpath在网站上爬取静态文字,就想着做一个东西,恰好前几天翻看博客是看到了wordcloud(词云)⛅这个库,就有一个想法涌入我的脑中,爬取2022年比较火的几个梗生成词云。但是受技术的限制好多想法实现不了,比如想让词云上某个梗的大小由某个梗的热度决定……

刘佳皓_Leo 4093

find命令

命令是 Linux/Unix 系统中用于搜索文件和目录的强大工具,支持多种搜索条件组合,并能对搜索结果执行各种操作。以下是其详细说明、常用参数及示例: 搜索路径:指定起始目录(如 、 或 表示当前目录)。 查找条件:基于文件名、类型、大小、时间等属性过滤。 处理动作:对匹配结果执行操作(如打印、删除、执行命令等)。 常用参数及示例 1. 按名称查找 :区分大小写匹配文件名。 :不区分大小写匹配文件名。 2. 按文件类型查找 :指定文件类型。 文件类型: :普通文件 :目录 :符号链接

qiao2458的博客 1136

PWM(脉宽调制)技术详解:从基础到应用实践示例

PWM(脉宽调制)技术是嵌入式系统中一项重要的控制技术,通过调节脉冲宽度来实现对模拟设备的精准控制。从LED亮度到电机速度,PWM的应用场景非常广泛。对于嵌入式学习者来说,理解PWM的工作原理、掌握其配置方法,不仅能提升编程能力,还能为更多复杂系统的开发打下坚实的基础。

SpringWJN的博客 6329

python扒数据存到本地_Python爬虫入门 | 6 将爬回来的数据存到本地

1.用Python语句存储数据写文件时,我们主要用到 with open() 语句:with open(name,mode,encoding) as file:file.write()# 注意,with open() 后面的语句有一个缩进name:包含文件名称的字符串,比如:‘xiaozhu.txt’; mode:决定了打开文件的模式,只读/写入/追加等; encoding:表示我们要写入数据的编...

weixin_39624716的博客 144

S4HANA - Cost Elements成本要素

SAP这里面的配置逻辑很像,就是先建一个对象,然后不停给这个对象附加一些属性,给一个账户附加编号范围,附加账户组。所有模块的维度都在这个表里,看下图的GL,CO,COPA,AA,ML的都在ACDOCA里。要把这5个类型和六大要素对应,先得把六大要素和账户类型对应下(以下是个人理解,不知道对错):当然那个C是新来的,我觉得放在资产下面也行,就不画图了。S4的嵌入式分析是在业务逻辑都整套嵌入的情况下,预开发了数据模型,所以它能提供的就不仅是原始数据了,它能提供的是包含所有相关联的上下文的信息数据。

weixin_45689053的博客 2394

python保存数据到本地_Python爬虫入门 | 6 将爬回来的数据存到本地

1.用Python语句存储数据写文件时,我们主要用到 with open() 语句:with open(name,mode,encoding) as file: file.write() # 注意,with open() 后面的语句有一个缩进name:包含文件名称的字符串,比如:‘xiaozhu.txt’;mode:决定了打开文件的模式,只读/写入/追加等;encoding:表示我们要写入...

weixin_39622399的博客 161

mac(apple silicon)arm64安装spm12详细教程

3.下载matlab runtime R2023b for macOS (macA64),注意必须下载这个,只下载matlab是不可以的。默认安装目录是/Applications/MATLAB/MATLAB_Runtime/R2023b。注意最后的命令,路径根据自己的matlab_runtime安装位置进行调整,然后就可以安装成功了。5. 解压spm12.zip,解压后将文件夹拖到应用程序下(Applications)2.下载spm12,这个版本可兼容mac芯片!6.打开mac终端,输入。

weixin_62332001的博客 2024

知识图谱构建中的数据清洗:AI原生应用高质量图谱的前提

数据清洗是知识图谱构建的核心前置环节,直接决定AI原生应用(如智能问答、个性化推荐、决策支持系统)的图谱质量与应用效能。本文以第一性原理为起点,系统解析数据清洗的理论框架、技术架构与工程实践,覆盖从多源异构数据的噪声检测到高质量知识三元组(实体-关系-实体)生成的全流程。通过层次化概念映射(专家→中级→入门)、数学形式化建模及工业级案例分析,揭示数据清洗在解决实体歧义、关系冲突、结构不一致等关键问题中的技术逻辑,并展望基于大模型的智能清洗范式演化。Completeness(完整性)

移动开发前沿的博客 404

python怎么存数据_Python爬虫入门 | 6 将爬回来的数据存到本地

1.用Python语句存储数据写文件时,我们主要用到 with open() 语句:with open(name,mode,encoding) as file:file.write()# 注意,with open() 后面的语句有一个缩进name:包含文件名称的字符串,比如:‘xiaozhu.txt’; mode:决定了打开文件的模式,只读/写入/追加等; encoding:表示我们要写入数据的编...

weixin_39531374的博客 147

基于SAGE算法的宽带信道参数估计算法的MATLAB仿真

本文将介绍如何使用MATLAB进行SAGE算法的仿真,以便更好地理解和应用该算法。SAGE算法是一种基于最大期望(Expectation-Maximization)方法的迭代估计算法,用于估计未知的参数。在宽带信道参数估计中,SAGE算法通过迭代优化来估计信道的传输函数。总结起来,本文介绍了如何使用MATLAB进行基于SAGE算法的宽带信道参数提取算法的仿真。通过以上步骤,我们可以得到估计的信道响应,并与真实信道响应进行比较。此外,SAGE算法还可以与其他信道估计算法相结合,以提高估计的准确性和性能。

CodeRoarX的博客 1075

如何将python爬出来的数据保存_Python爬虫入门6 将爬回来的数据存到本地

1.用Python语句存储数据写文件时,我们主要用到 with open() 语句:with open(name,mode,encoding) as file: file.write() # 注意,with open() 后面的语句有一个缩进name:包含文件名称的字符串,比如:‘xiaozhu.txt’; mode:决定了打开文件的模式,只读/写入/追加等; encoding:表示我们要...

weixin_39992072的博客 542

大华 DSS 数字监控系统 itcBulletin SQL 注入漏洞复现

大华 DSs 数字监控系统是大华开发的一款安防视频监控系统,拥有实时监视、云台操作、录像回放、报警处理、设备管理等功能。大华 DSS存在SQL注入漏洞,攻击者 pota/services/itcBuletin 路由发送特殊构造的数据包,利用报错注入获取数据库敏感信息。攻击者除了可以利用 SQL注入漏词获取数据库中的信息例如,管理员后台密码、站点的用户人人信息)之外,甚至在高权限的情况可向服务器中写入木马,进一步获取服务器系统权限poc验证是否存在漏洞如果你想查询用户名和密码。

holyxp的博客 4003

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

python爬虫下载文件到指定文件夹_Python爬虫入门 | 6 将爬回来的数据存到本地

1.用Python语句存储数据写文件时,我们主要用到 with open() 语句:with open(name,mode,encoding) as file:file.write()# 注意,with open() 后面的语句有一个缩进name:包含文件名称的字符串,比如:‘xiaozhu.txt’; mode:决定了打开文件的模式,只读/写入/追加等; encoding:表示我们要写入数据的编...

weixin_39987313的博客 1491

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

什么是网络爬虫?有什么用?怎么爬?终于有人讲明白了

【导读】网络爬虫也叫做网络机器人,可以代替人们自动地在互联网中进行数据信息的采集与整理。在大数据时代,信息的采集是一项重要的工作,如果单纯靠人力进行信息采集,不仅低效繁琐,搜集的成本也会提高。 此时,我们可以使用网络爬虫对数据信息进行自动采集,比如应用于搜索引擎中对站点进行爬取收录,应用于数据分析与挖掘中对数据进行采集,应用于金融分析中对金融数据进行采集,除此之外,还可以将网络爬虫应用于舆情监测...

python学习者的博客 3万+

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

网络爬虫-Python网络爬虫和C#网络爬虫

C# 也可以用于网络爬虫开发,通过 HTTP 请求获取网页数据并进行解析。与 Python 类似,C# 也有相应的库和框架,虽然 C# 网络爬虫在简便性和灵活性上不如 Python,但在某些企业级应用中,C# 也表现出色。

weixin_42462436的博客 3403
上一篇: Python爬虫入门 | 5 爬取小猪短租租房信息
下一篇: Python爬虫入门 | 7 分类爬取豆瓣电影,解决动态加载问题
DataCastle
博客等级 码龄10年 870粉丝 202原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值