第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

將硬編碼的初始化值轉(zhuǎn)換為CSV

將硬編碼的初始化值轉(zhuǎn)換為CSV

紅糖糍粑 2021-03-29 18:15:13
我想使用Python從一堆包含硬編碼數(shù)據(jù)的javascript文件中將以下所示的數(shù)據(jù)行提取到一個(gè)csv文件中,如下所示:.... html代碼...hotels [0] = new hotelData();hotels [0] .hotelName =“ MANHATTAN”;hotels [0] .hotelPhone =“”;hotels [0] .hotelSalesPhone =“”;hotels [0] .hotelPhone ='Phone:888-350-6432 ';hotels [0] .hotelStreet =“ 787 11TH AVENUE”;hotels [0] .hotelCity =“紐約”;hotels [0] .hotelState =“ NY”;hotels [0] .hotelZip =“ 10019”;hotels [0] .hotelId =“ 51543”;hotels [0] .hotelLat =“ 40.7686” ;;hotels [0] .hotelLong =“ -73.992645” ;;hotels [1] = new hotelData();hotels [1] .hotelName =“ KOEPPEL”;hotels [1] .hotelPhone =“”;hotels [1] .hotelSalesPhone =“”;hotels [1] .hotelPhone ='電話:718-721-9100 ';hotels [1] .hotelStreet =“ 57-01 NORTHERN BLVD?!?hotels [1] .hotelCity =“ WOODSIDE”;hotels [1] .hotelState =“ NY”;hotels [1] .hotelZip =“ 11377”;hotels [1] .hotelId =“ 51582”;hotels [1] .hotelLat =“ 40.75362” ;;hotels [1] .hotelLong =“ -73.90366” ;;    var mykey =“ AlvQ9gNhp7oNuvjhkalD4OWVs_9LvGHg0ZLG9cWwRdAUbsy-ZIW1N9uVSU0V4X-8”;                var map = null;                var pins = null;                var i = null;                var box = new Array();                var currentBox = null;                var mapOptions = {                憑據(jù):mykey,                enableSearchLogo:否,                showMapTypeSelector:否,                enableClickableLogo:否                }..... html代碼.....因此,所需的csv輸出將類(lèi)似于上述數(shù)據(jù)的行:曼哈頓,電話:888-350-6432 ...KOEPPEL``電話:718-721-9100 ...我是否應(yīng)該使用代碼生成工具直接解析以上語(yǔ)句以獲取數(shù)據(jù)?哪一種最有效的Python方法可將數(shù)千個(gè)Javascript文件中包含的此類(lèi)數(shù)據(jù)轉(zhuǎn)換為csv表格格式?
查看完整描述

3 回答

?
慕虎7371278

TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超4個(gè)贊

如果每個(gè)旅館都在文件中聲明了每個(gè)字段(即,即使所有旅館都有相同數(shù)量的行,即使其中一些行為空),也可以嘗試使用簡(jiǎn)單的正則表達(dá)式來(lái)提取用引號(hào)引起來(lái)的每個(gè)值( “ xxx”),然后按數(shù)字將其分組(例如,將每5個(gè)字段分組為一行,然后添加一個(gè)換行符)。


一個(gè)有效的簡(jiǎn)單正則表達(dá)式將是["'][^"']*["'](編輯:這是因?yàn)槲铱吹侥承┪募碢hone)使用單引號(hào),其余使用引號(hào))。


要進(jìn)行搜索,請(qǐng)使用findall:


compPattern = re.compile(pattern)

results = compPattern.findall(compPattern)


查看完整回答
反對(duì) 回復(fù) 2021-04-06
?
萬(wàn)千封印

TA貢獻(xiàn)1891條經(jīng)驗(yàn) 獲得超3個(gè)贊

如果這是您必須常規(guī)執(zhí)行的操作,并且希望使該過(guò)程完全自動(dòng)化,我認(rèn)為最簡(jiǎn)單的方法就是使用Python解析文件,然后使用csv Python模塊寫(xiě)入csv 。


您的代碼可能看起來(lái)像這樣:


with open("datafile.txt") as f:

    hotel_data = []

    for line in f:

        # Let's make sure the line not empty

        if line:

            if "new hotelData();" in line:

                if hotel_data:

                    write_to_csv(hotel_data)

                    hotel_data = []

        else:

            # Data, still has ending quote and semi colon

            data = line.split("= ")[1]

            # Remove ending quote and semi colon 

            data = data[:-2]

            hotel_data.append(data)


def write_to_csv(hotel_data):

    with open('hotels.csv', 'wb') as csvfile:

        spamwriter = csv.writer(csvfile, delimiter=',',

                                quotechar='""', quoting=csv.QUOTE_MINIMAL)


        spamwriter.writerow(hotel_data)

請(qǐng)注意,我尚未測(cè)試此代碼,它僅是為了幫助您并為您指明正確的方向,它不是完整的解決方案。


查看完整回答
反對(duì) 回復(fù) 2021-04-06
  • 3 回答
  • 0 關(guān)注
  • 204 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)