python爬取数据并存到excel,python爬虫保存数据

大家好,小编为大家解答python爬取的数据怎么将其放入excel文件里的问题。很多人还不知道python将爬取的数据保存在哪个文件夹,现在让我们一起来看看吧!

Source code download: 本文相关源码

接上一篇文章: Python爬虫(一):编写简单爬虫之新手入门

前言:

上一篇文章,我爬取到了豆瓣官网的页面代码,我在想怎样让爬取到的页面显示出来呀,爬到的数据是html页面代码,不如将爬取到的代码保存到一个文件中,文件命名为html格式,那直接打开这个文件就可以在浏览器上看到爬取数据的效果了。废话不多说,进入正文用python画小猫简单

本篇文章:继续介绍另外两种方式来实现python爬虫获取数据,并将python获取的数据保存到文件中。

一、第一种方式:

主要通过爬取百度官网页面数据,将数据保存到文件baidu.html中,程序运行完打开文件baidu.html查看效果。具体代码中有详细的代码解释,相信刚入门的你也能看懂~~

说明一下我的代码环境是python3.7,本地环境是python2.x的可能需要改部分代码,用python3.x环境的没问题。

代码如下:
# -*- coding: utf-8 -*-
import urllib.request
import urllib

# 1、网址url  --百度    
url = 'http://www.baidu.com'

# 2、创建request请求对象
request = urllib.request.Request(url)

# 3、发送请求获取结果
response = urllib.request.urlopen(request)
htmldata = response.read()

# 4、设置编码方式
htmldata = htmldata.decode('utf-8')

# 5、打印结果
print (htmldata)

# 6、打印爬去网页的各类信息
print ("response的类型:",type(response))
print ("请求的url:",response.geturl())
print ("响应的信息:",response.info())
print ("状态码:",response.getcode())

# 7、爬取数据保存到文件
fileOb = open('baidu.html','w',encoding='utf-8')     #打开一个文件,没有就新建一个
fileOb.write(htmldata)
fileOb.close()

在open()方法中如果没有设置编码encoding=‘utf-8’,会报错,原因如下:
在windows下面,新文件的默认编码是gbk,这样的话,python解释器会用gbk编码去解析我们的网络数据流html,
然而html此时已经是decode过的unicode编码,这样的话就会导致解析不了,出现上述问题。
设置encoding=‘utf-8’,打开文件时就按照utf-8格式编码,则顺利运行。

运行结果:

部分截图如下:截取的是第六步中的网页各类信息,第五步打印的数据过多,也已经保存到文件baidu.html中了,所以没有截取。

下图是运行程序之后在本地生成的baidu.html文件**:**

打开此baidu.html文件结果如下图所示:

有没有很神奇是不是和百度页面一模一样_,没错,就是这样子的

二、第二种方式:添加特殊情景的处理器

代码如下:

# -*- coding: utf-8 -*-
import urllib.request, http.cookiejar

# 1、网址url  --百度
url = 'http://www.baidu.com'

# 2、创建cookie容器
cj = http.cookiejar.CookieJar()
handle = urllib.request.HTTPCookieProcessor(cj)

# 3、创建1个opener
opener = urllib.request.build_opener(handle)

# 4、给urllib.request安装opener
urllib.request.install_opener(opener)

# 5、使用带有cookie的urllib.request访问网页,发送请求返回结果
response = urllib.request.urlopen(url)
htmldata = response.read()

# 6、设置编码方式
data = htmldata.decode("utf-8")

# 7、打印结果
print (data)

# 8、打印爬去网页的各类信息
print ("response的类型:",type(response))
print ("请求的url:",response.geturl())
print ("响应的信息:",response.info())
print ("状态码:",response.getcode())

# 9、爬取数据保存到文件
fileOb = open('baiduCookie.html','w',encoding='utf-8')     #打开一个文件,没有就新建一个
fileOb.write(data)
fileOb.close()


为了区别第一种生成的文件baidu.html,这里我将第二种生成的文件命名为baiduCookie.html

这种方式结果和第一种一样,只是代码不同,所以下面不在赘述,结果见第一种即可。

喜欢我的文章的可以关注哦,有问题的可以提出来,互相交流,互相学习_

觉得不过瘾,看下一篇文章。

接下一篇文章: Python爬虫(三):python抓取网页中的图片到本地

总结

说了这么多,旨在告诉大家Python这个类目无论是功能性、还是上手程度都碾压其他语言,作为最适合零基础入门的编程语言,想要学习自然不能纸上谈兵,还得沉下心来深入的研究和学习。

只告诉大家学什么但是不给予方向的行为无异于耍流氓,这里也是分享我多年收藏的技术干货,可以共享给喜欢我文章的朋友们,如果你肯花时间沉下心去学习,它们一定能帮到你,干货内容包括:
在这里插入图片描述

上述这份完整版的Python全套学习资料已经上传CSDN官方,如果需要可以微信扫描下方CSDN官方认证二维码 即可领取

👉[[CSDN大礼包:《python安装包&全套学习资料》免费分享]]安全链接,放心点击

  • 10
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 可以使用Python编写程序来网页数据,然后将数据写入Excel文件中。具体步骤包括:1.使用requests库发起HTTP请求获网页源代码;2.使用BeautifulSoup库解析网页内容;3.将解析后的数据存储到Excel文件中,可以使用pandas库或者openpyxl库进行操作。需要注意的是,在网页数据的过程中,必须遵守相关的法律法规和网站的使用规定,不得进行非法操作和侵犯他人隐私的行为。 ### 回答2: Python作为一种高级编程语言,具有强大的爬虫数据处理能力。与此同时,Excel又是一款常见的办公软件,被广泛应用于数据分析和操作中。因此,通过Python网页数据Excel,就变得非常必要和有用了。 网页数据,一般都是使用requests和beautifulsoup4两个库来实现。其中requests用于获网页的源代码,beautifulsoup4则用于解析网页的DOM结构,提出我们需要的部分数据。此外,还需要借助一些其他的库,如pandas来进行数据的可视化、操作和处理。 整个流程可以分为以下几个步骤: 1.使用requests库获目标网页的源代码,也可以结合selenium等工具模拟浏览器来获动态页面的数据; 2.使用beautifulsoup4库对网页进行解析,提出我们需要的数据,比如文章标题、发布日期、作者等等; 3.使用pandas库进行数据的可视化和处理,将数据整理成DataFrame格式,然后输出到Excel文件中; 4.本地读Excel文件并进行数据的分析、操作和展示。 在进行爬虫开发期间,还需要注意到一些问题,比如在访问网站的时候需要进行User-Agent、Cookie和代理的设置,同时还要具备良好的爬虫道德,避免对目标网站造成不必要的影响。 总之,通过Python网页数据Excel,可以极大地方便我们对数据的分析和操作,提升工作效率和准确度。同时,这也是一个非常有用的技能,在数据分析和数据挖掘等领域有广泛的应用。 ### 回答3: Python是一种强大的编程语言,可用于从网络数据,将其处理并保存到多种数据格式中,包括Excel。这种功能是非常有用的,特别是当我们希望收集大量信息并进行分析时。下面是一些在Python网页数据并将其保存Excel中的步骤: 1. 导入必要的库:Python有许多库可用于和处理网页数据,其中一些最常用的是BeautifulSoup、requests和pandas。在使用这些库前需要先安装它们(pip install)。 2. 获网页:使用requests库中的get方法可以轻松获网页内容。 3. 解析网页:BeautifulSoup库是Python中最常用的解析HTML网页的库,它可以轻松地找到HTML页面的特定元素。 4. 处理数据:使用pandas库中的DataFrame对象可以轻松地处理表格数据并将其存储到Excel中。 5. 将数据保存Excel:使用pandas库中的to_excel方法可以将处理后的数据保存Excel。 下面是一个示例代码,用于从某个网站中获数量、日期和价格的数据,并将其存储到Excel中: ``` import requests from bs4 import BeautifulSoup import pandas as pd url = 'https://www.example.com/data' response = requests.get(url) soup = BeautifulSoup(response.text, 'html.parser') table = soup.find('table',{'class':'data-table'}) rows = table.find_all('tr') data = [] for row in rows: cols = row.find_all('td') cols = [col.text.strip() for col in cols] data.append([col for col in cols if col]) df = pd.DataFrame(data, columns=['Quantity', 'Date', 'Price']) df.to_excel('data.xlsx', index=False) ``` 在上面的代码中,我们首先使用requests库获特定网页的内容,并使用BeautifulSoup库找到网页中的表格数据。接下来,我们使用pandas库中的DataFrame对象处理数据,并使用to_excel方法将其保存Excel文件中。此示例代码非常简单和易于理解,但是,在实际的爬虫项目中,您可能需要有更高级的技能和更复杂的代码来处理不同的情况,例如数据更新、数据清洗和数据预处理等。需要注意的是,网页数据存在合法性和道德性问题,应遵守相关法律法规,不得擅自收集、使用和公开他人的相关信息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值