欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

使用pandas生成/讀取csv文件的方法實(shí)例

 更新時(shí)間:2021年07月08日 16:39:16   作者:滑冰選手庫里  
在使用Pandas處理數(shù)據(jù)時(shí),常見的讀取數(shù)據(jù)的方式時(shí)從Excel或CSV文件中獲取,這篇文章主要給大家介紹了關(guān)于如何使用pandas生成、讀取csv文件的相關(guān)資料,需要的朋友可以參考下

前言

csv是我接觸的比較早的一種文件,比較好的是這種文件既能夠以電子表格的形式查看又能夠以文本的形式查看。

先引入pandas庫

import pandas as pd

方法一:

1、我構(gòu)造了一個(gè)cont_list,結(jié)構(gòu)為列表嵌套字典,字典是每一個(gè)樣本,類似于我們爬蟲爬下來的數(shù)據(jù)的結(jié)構(gòu)

2、利用pd.DataFrame方法先將數(shù)據(jù)轉(zhuǎn)換成一個(gè)二維結(jié)構(gòu)數(shù)據(jù),如下方打印的內(nèi)容所示,cloumns指定列表,列表必須是列表

3、to_csv方法可以直接保存csv文件,index=False表示csv文件不加行序號

保存csv結(jié)果

應(yīng)用到我們的爬蟲代碼,傳入的con_list就是[{},{},{}****]這樣的額數(shù)據(jù)結(jié)構(gòu),encoding="utf_8_sig",encoding="gb18030”,我這邊解決中文編碼問題

是不是很方便就,2行代碼即可搞定保存,是不是比上次講的方法簡單好多,其實(shí)很多方法,還有python的優(yōu)秀庫,都使python這門語言在數(shù)據(jù)分析領(lǐng)域有極大的優(yōu)勢

方法二:

流程:模擬登錄→獲取Html頁面→正則解析所有符合條件的行→逐一將符合條件的行的所有列存入到CSVData[]臨時(shí)變量中→寫入到CSV文件中

核心代碼:

####寫入csv文件中
 
with open(self.CsvFileName, 'wb') as csvfile:
 
spamwriter = csv.writer(csvfile, dialect='excel')
 
#設(shè)置標(biāo)題
 
spamwriter.writerow(["游戲賬號","用戶類型","游戲名稱","渠道","充值類型","充值金額","返利金額","單號","日期"])
 
#將CsvData中的數(shù)據(jù)循環(huán)寫入到CsvFileName文件中
 
for item in self.CsvData:
 
spamwriter.writerow(item)

完整代碼:

# coding=utf-8
 
import urllib
 
import urllib2
 
import cookielib
 
import re
 
import csv
 
import sys
 
 
class Pyw():
 
#初始化數(shù)據(jù)
 
def __init__(self):
 
#登錄的Url地址
 
self.LoginUrl="http://v.pyw.cn/login/check"
 
#所要獲取的Url地址
 
self.PageUrl="http://v.pyw.cn/Data/accountdetail/%s"
 
# 傳輸?shù)臄?shù)據(jù):用戶名、密碼、是否記住用戶名
 
self.PostData = urllib.urlencode({
 
"username": "15880xxxxxx",
 
"password": "a123456",
 
"remember": "1"
 
})
 
#第幾筆記錄
 
self.PageIndex=0;
 
#循環(huán)獲取共4頁內(nèi)容
 
self.PageTotal=1
 
#正則解析出tr
 
self.TrExp=re.compile("(?isu)<tr[^>]*>(.*?)</tr>")
 
#正則解析出td
 
self.TdExp = re.compile("(?isu)<td[^>]*>(.*?)</td>")
 
#創(chuàng)建cookie
 
self.cookie = cookielib.CookieJar()
 
#構(gòu)建opener
 
self.opener=urllib2.build_opener(urllib2.HTTPCookieProcessor(self.cookie))
 
#解析頁面總頁數(shù)
 
self.Total=4
 
#####設(shè)置csv文件
 
self.CsvFileName="Pyw.csv"
 
#####存儲Csv數(shù)據(jù)
 
self.CsvData=[]
 
 
#解析網(wǎng)頁中的內(nèi)容
 
def GetPageItem(self,PageHtml):
 
#循環(huán)取出Table中的所有行
 
for row in self.TrExp.findall(PageHtml):
 
#取出當(dāng)前行的所有列
 
coloumn=self.TdExp.findall(row)
 
#判斷符合的記錄
 
if len(coloumn) == 9:
 
# print "游戲賬號:%s" % coloumn[0].strip()
 
# print "用戶類型:%s" % coloumn[1].strip()
 
# print "游戲名稱:%s" % coloumn[2].strip()
 
# print "渠道:%s" % coloumn[3].strip()
 
# print "充值類型:%s" % coloumn[4].strip()
 
# print "充值金額:%s" % coloumn[5].strip().replace("¥", "")
 
# print "返利金額:%s" % coloumn[6].strip().replace("¥", "")
 
# print "單號:%s" % coloumn[7].strip()
 
# print "日期:%s" % coloumn[8].strip()
 
#拼湊行數(shù)據(jù)
 
d=[coloumn[0].strip(),
 
coloumn[1].strip(),
 
coloumn[2].strip(),
 
coloumn[3].strip(),
 
coloumn[4].strip(),
 
coloumn[5].strip().replace("¥", ""),
 
coloumn[6].strip().replace("¥", ""),
 
coloumn[7].strip(),
 
coloumn[8].strip()]
 
self.CsvData.append(d)
 
 
#模擬登錄并獲取頁面數(shù)據(jù)
 
def GetPageHtml(self):
 
try:
 
#模擬登錄
 
request=urllib2.Request(url=self.LoginUrl,data=self.PostData)
 
ResultHtml=self.opener.open(request)
 
#開始執(zhí)行獲取頁面數(shù)據(jù)
 
while self.PageTotal<=self.Total:
 
#動(dòng)態(tài)拼湊所要解析的Url
 
m_PageUrl = self.PageUrl % self.PageTotal
 
#計(jì)算當(dāng)期第幾頁
 
self.PageTotal = self.PageTotal + 1
 
#獲取當(dāng)前解析頁面的所有內(nèi)容
 
ResultHtml=self.opener.open(m_PageUrl)
 
#解析網(wǎng)頁中的內(nèi)容
 
self.GetPageItem(ResultHtml.read())
 
 
####寫入Csv文件中
 
with open(self.CsvFileName, 'wb') as csvfile:
 
spamwriter = csv.writer(csvfile, dialect='excel')
 
#設(shè)置標(biāo)題
 
spamwriter.writerow(["游戲賬號","用戶類型","游戲名稱","渠道","充值類型","充值金額","返利金額","單號","日期"])
 
#將CsvData中的數(shù)據(jù)循環(huán)寫入到CsvFileName文件中
 
for item in self.CsvData:
 
spamwriter.writerow(item)
 
 
print "成功導(dǎo)出CSV文件!"
 
except Exception,e:
 
print "404 error!%s" % e
 
#實(shí)例化類
 
p=Pyw()
 
#執(zhí)行方法
 
p.GetPageHtml()

導(dǎo)出結(jié)果

讀取CSV

import pandas as pd

data = pd.read_table('地址', sep=",")['網(wǎng)址'].values

print(data[1])

總結(jié)

到此這篇關(guān)于使用pandas生成/讀取csv文件的文章就介紹到這了,更多相關(guān)pandas生成讀取csv文件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 基于pytorch padding=SAME的解決方式

    基于pytorch padding=SAME的解決方式

    今天小編就為大家分享一篇基于pytorch padding=SAME的解決方式,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • 談?wù)凱ython進(jìn)行驗(yàn)證碼識別的一些想法

    談?wù)凱ython進(jìn)行驗(yàn)證碼識別的一些想法

    關(guān)于python驗(yàn)證碼識別,主要方法有幾類:一類是通過對圖片進(jìn)行處理,然后利用字庫特征匹配的方法,一類是圖片處理后建立字符對應(yīng)字典,還有一類是直接利用ocr模塊進(jìn)行識別。不管是用什么方法,都需要首先對圖片進(jìn)行處理,于是試著對下面的驗(yàn)證碼進(jìn)行分析
    2016-01-01
  • 給numpy.array增加維度的超簡單方法

    給numpy.array增加維度的超簡單方法

    這篇文章主要介紹了給numpy.array增加維度的超簡單方法,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • PyTorch一小時(shí)掌握之a(chǎn)utograd機(jī)制篇

    PyTorch一小時(shí)掌握之a(chǎn)utograd機(jī)制篇

    這篇文章主要介紹了PyTorch一小時(shí)掌握之a(chǎn)utograd機(jī)制篇,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-09-09
  • Python練習(xí)-承壓計(jì)算

    Python練習(xí)-承壓計(jì)算

    這篇文章主要介紹了Python練習(xí)-承壓計(jì)算,前面我們練習(xí)了Python購物單,這篇我們繼續(xù)練習(xí)承壓計(jì)算,和前篇文章一樣還是問題描述開始,需要的小伙伴可以參考一下
    2022-01-01
  • 淺談python迭代器

    淺談python迭代器

    這篇文章主要介紹了淺談python迭代器,具有一定參考價(jià)值,需要的朋友可以了解下。
    2017-11-11
  • python繪制y關(guān)于x的線性回歸線性方程圖像實(shí)例

    python繪制y關(guān)于x的線性回歸線性方程圖像實(shí)例

    這篇文章主要為大家介紹了python繪制y關(guān)于x的線性回歸線性方程圖像實(shí)例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-10-10
  • 使用python PIL庫批量對圖片添加水印的過程詳解

    使用python PIL庫批量對圖片添加水印的過程詳解

    平常我們想給某些圖片添加文字水印,方法有很多,也有很多的工具可以方便的進(jìn)行,今天主要是對PIL庫的應(yīng)用,結(jié)合Python語言批量對圖片添加水印,文章通過代碼示例給大家介紹的非常詳細(xì),感興趣的同學(xué)可以參考一下
    2023-11-11
  • Python服務(wù)器創(chuàng)建虛擬環(huán)境跑代碼

    Python服務(wù)器創(chuàng)建虛擬環(huán)境跑代碼

    本文主要介紹了Python服務(wù)器創(chuàng)建虛擬環(huán)境跑代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • PySide6精簡教程(附圖文!)

    PySide6精簡教程(附圖文!)

    PySide6是Qt的Python封裝,是Qt for Python的組成之一,另一部分是Shiboken,下面這篇文章主要給大家介紹了關(guān)于PySide6精簡教程的相關(guān)資料,需要的朋友可以參考下
    2023-02-02

最新評論