python怎么把数据导出pdf,doc,xls,html,csv格式 51cto

python怎么把数据导出pdf,doc,xls,html,csv格式 51cto,第1张

Python导出数据到Excel可读取的CSV文件的方法。分享给大家供大家参考。具体实现方法如下:

import csv

with open('eggscsv', 'wb') as csvfile:

#spamwriter = csvwriter(csvfile, delimiter=' ',quotechar='|',

#quoting=csvQUOTE_MINIMAL)

spamwriter = csvwriter(csvfile, dialect='excel')

spamwriterwriterow(['Spam'] 5 + ['Baked Beans'])

spamwriterwriterow(['Spam', 'Lovely Spam', 'Wonderful Spam'])

我们经常会发现网页中的许多数据并不是写死在HTML中的,而是通过js动态载入的。所以也就引出了什么是动态数据的概念, 动态数据在这里指的是网页中由Javascript动态生成的页面内容,是在页面加载到浏览器后动态生成的,而之前并没有的。

在编写爬虫进行网页数据抓取的时候,经常会遇到这种需要动态加载数据的HTML网页,如果还是直接从网页上抓取那么将无法获得任何数据。

今天,我们就在这里简单聊一聊如何用python来抓取页面中的JS动态加载的数据。

给出一个网页:豆瓣**排行榜,其中的所有**信息都是动态加载的。我们无法直接从页面中获得每个**的信息。

如下图所示,我们无法在HTML中找到对应的**信息。

在Chrome浏览器中,点击F12,打开Network中的XHR,我们来抓取对应的js文件来进行解析。如下图:

在豆瓣页面向下拖拽,使得页面加载入更多的**信息,从而我们可以抓取对应的报文。

我们可以看到它采用的是AJAX异步请求。通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。因此就可以在不重新加载整个网页的情况下,对网页的某部分进行更新,从而实现数据的动态载入。

我们可以看到,通过GET,我们得到的response之中包含了所对应的**相关信息,它们以JSON的格式保存在一起。

查看一下RequestURL信息,我们可以发现在action参数之后又跟了两个参数"start"和"limit",很显然它们的意思是:"从某个位置开始返回的**的个数"。

如果想快速获取相关的**信息,就可以直接把这个URL复制进地址栏,修改你所需要的start和limit参数值,将得到对应的结果进行抓取即可。

但是这样显得很不自动化,而且很多其他网站的RequestURL并不给的这么直接,所以我们接下来用python进行进一步的 *** 作来获取这个返回的报文信息。

#coding:utf-8import urllibimport requestspost_param = {'action':'','start':'0','limit':'1'}

return_data = requestsget(">

因为豆瓣是>

我们可以发现打印出的结果中就是对应的JSON文件,下一步的解析和 *** 作在这里就不赘述了。[{"rating":["96","50"],"rank":1,"cover_url":">

方法如下:

csvde_fadcsv将ActiveDirectory对象导出到名为adcsv的文件。_f开关表示后面为输出文件的名称。如果要实现更精确的导出记录,可以使用-d和-r以及-l参数。其中:-d用来指定特定的搜索位置和范围。

把print出来的,都存到一个list里。

all_case=['姓名','张三','年龄','18']

b=[]

x=0

y=0

for i in range(0,len(all_case),2):

b = all_case[i:i+2]

for i in b:

wswrite(x,y,i,style)

x+=1

y+=1

x=0

wtbooksave(path_dst)

上面是核心内容,你理解一下。就是将list变为2个元素一组的小list,然后对小list按行写入,写完到下一个小list再回到第一行。

写完发现没有格式啊。。。注意一下x+=1和里面for是一组。y+=1和x=0和外面的for是一组。

以上就是关于python怎么把数据导出pdf,doc,xls,html,csv格式 51cto全部的内容,包括:python怎么把数据导出pdf,doc,xls,html,csv格式 51cto、浏览器F12的Network选项里的数据,使用Python编程如何导出、如何用python导出AD域账号等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/9854877.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存