|
@@ -0,0 +1,100 @@
|
|
|
|
+import csv
|
|
|
|
+import sys
|
|
|
|
+import codecs
|
|
|
|
+import pandas as pd
|
|
|
|
+
|
|
|
|
+with codecs.open('/Users/zooeytsai/Documents/220628有夠讚GDN.csv', 'r', 'utf-16') as csvfile:
|
|
|
|
+ spamreader = csv.reader(csvfile, delimiter='\t', quotechar='|')
|
|
|
|
+ # df = pd.read_csv('/Users/zooeytsai/Documents/220628有夠讚GDN.csv', encoding='utf16')
|
|
|
|
+ kwdict = {}
|
|
|
|
+ addict = {}
|
|
|
|
+ d = {}
|
|
|
|
+ head = True
|
|
|
|
+ for row in spamreader:
|
|
|
|
+ # print(row)
|
|
|
|
+ if head:
|
|
|
|
+ head = False
|
|
|
|
+ continue
|
|
|
|
+ ll = len(row)
|
|
|
|
+ campaign = row[0]
|
|
|
|
+ adgroup = row[19]
|
|
|
|
+ # print(adgroup)
|
|
|
|
+ kw = row[47]
|
|
|
|
+
|
|
|
|
+ # if len(kw) > 0:
|
|
|
|
+ # print(campaign)
|
|
|
|
+ # print(adgroup)
|
|
|
|
+ if kwdict.get(adgroup) is None:
|
|
|
|
+ kwdict[adgroup] = []
|
|
|
|
+ if addict.get(adgroup) is None:
|
|
|
|
+ addict[adgroup] = []
|
|
|
|
+ if d.get(adgroup) is None:
|
|
|
|
+ d[adgroup] = []
|
|
|
|
+ kwdict[adgroup].append(kw)
|
|
|
|
+
|
|
|
|
+ for i in range(59, 65): #加了Long headline
|
|
|
|
+ hline = row[i]
|
|
|
|
+ # print(hline)
|
|
|
|
+ if len(hline) > 0:
|
|
|
|
+ print(addict[adgroup])
|
|
|
|
+ addict[adgroup].append(hline)
|
|
|
|
+ for i in range(65, 67):
|
|
|
|
+ hline = row[i]
|
|
|
|
+ # print(i, hline)
|
|
|
|
+ if len(hline) > 0:
|
|
|
|
+ d[adgroup].append(hline)
|
|
|
|
+ # print(addict)
|
|
|
|
+fw = codecs.open('/Users/zooeytsai/Documents/有夠讚GDN廣告datastudio.csv', 'w', 'utf-8')
|
|
|
|
+fw.write("活動,群組,關鍵字,廣告標題,廣告內容")
|
|
|
|
+for k, v in kwdict.items():
|
|
|
|
+ kwlen = len(v)
|
|
|
|
+ adlen = len(addict[k])
|
|
|
|
+ totlen = max(kwlen, adlen)
|
|
|
|
+ for i in range(totlen):
|
|
|
|
+ print(campaign)
|
|
|
|
+ try:
|
|
|
|
+ kw = v[i]
|
|
|
|
+ except:
|
|
|
|
+ kw = ' '
|
|
|
|
+ try:
|
|
|
|
+ ad = addict[k][i]
|
|
|
|
+ # print(ad)
|
|
|
|
+ except:
|
|
|
|
+ ad = ' '
|
|
|
|
+ try:
|
|
|
|
+ ad1 = d[k][i]
|
|
|
|
+ # print(ad)
|
|
|
|
+ except:
|
|
|
|
+ ad1 = ' '
|
|
|
|
+ data = "\n" + campaign + "," + k + "," + kw + "," + ad + "," + ad1
|
|
|
|
+ fw.write(data)
|
|
|
|
+
|
|
|
|
+fw.close()
|
|
|
|
+
|
|
|
|
+# for k,v in addict.items():
|
|
|
|
+# print('rectangle '+k+'_ad'+' {')
|
|
|
|
+# print('card '+k+'廣告'+' [')
|
|
|
|
+
|
|
|
|
+# for itm in v:
|
|
|
|
+# print(itm)
|
|
|
|
+# print(']')
|
|
|
|
+# print('}')
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+# print(campaign+' -[#black]-> '+k+'_ad')
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+# print(kwdict)
|
|
|
|
+# print(addict)
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+# for row in spamreader:
|
|
|
|
+# ll=len(row)
|
|
|
|
+#
|
|
|
|
+# for i in range(ll):
|
|
|
|
+# print(i)
|
|
|
|
+# print(row[i])
|
|
|
|
+# break
|
|
|
|
+
|
|
|
|
+#
|
|
|
|
+# sys.exit()
|