【Python】兩個for循環嵌套練習

要求:取下方籃框中內容並寫入csv文件中。用兩個for循環將每一行取出來做爲一個元素存放到新數組中。web

 

 1 # coding=utf-8
 2 from selenium import webdriver
 3 from time import sleep
 4 import keyword
 5 from selenium.webdriver.common.keys import Keys
 6 from selenium.webdriver.support.wait import WebDriverWait
 7 from selenium.webdriver.support.ui import Select
 8 import csv
 9 import random
10 import io
11 outputFilePath = "F:\CaipiaoOutputData.csv"
12 #滾動滾動條`
13 def MoveScorllBar(driver,down,range1,range2):
14     moneCount=random.randint(range1, range2)
15     for num in range(1,moneCount):
16         if(down=="down"):
17             driver.find_element_by_xpath("//body").send_keys(Keys.DOWN)
18             sleep(random.uniform(0.1,0.5))
19         else:
20             driver.find_element_by_xpath("//body").send_keys(Keys.UP)
21             sleep(random.uniform(0.1,0.5))
22     return
23 #將讀取的內容寫入一個新的csv文檔
24 def Savecsvfile(filePath):
25     csvFile2 = open(filePath, 'w', newline='')  # 設置newline,不然兩行之間會空一行
26     writer = csv.writer(csvFile2)
27     writer.writerow(['賽事', '開賽時間', '主隊', '客隊', '數據', '主隊勝', '平局', '客隊勝', '投注分佈'])
28     writer.writerows(outputTr)
29     #csvfile.close()
30 #主函數
31 if __name__=="__main__":
32     outputTr=[]
33     driver = webdriver.Chrome()
34     driver.get("http://caipiao.hao123.com/")
35     MoveScorllBar(driver, "down", 30, 60)
36     '''
37     ths = driver.find_element_by_id("panel-zucai-jingji").find_elements_by_tag_name("th")
38     for th in ths:
39         print(th.text)
40         outputTr.append(th.text)'''
41     trs = driver.find_element_by_xpath('//*[@id="panel-zucai-jingji"]/div/table').find_elements_by_tag_name("tr")
42     for tr in trs:
43         outputString = []
44         tds=tr.find_elements_by_tag_name("td")
45         for td in tds:
46             outputString.append(td.text)
47         print(outputString)
48         outputTr.append(outputString)
49 
50     print(outputTr)
51     Savecsvfile(outputFilePath)
相關文章
相關標籤/搜索