亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

創建列表時如何避免數據被覆蓋?硒網絡驅動程序,Python

創建列表時如何避免數據被覆蓋?硒網絡驅動程序,Python

搖曳的薔薇 2023-06-27 17:28:18
我想通過點擊歌曲來抓取以下網站上的每一頁:https://www.top40.nl/top40/2020/week-34(每年和周數),然后移動到“songinfo”,然后抓取表中列出的所有數據。對于這個問題,我到目前為止只刮了標題。這是我使用的網址: url = 'https://www.top40.nl/top40/'但是,當我打印歌曲列表時,它只會返回網站上的最后一個標題。因此,我相信我正在重寫。希望有人能解釋我犯了哪些錯誤,以及是否有更簡單的方法來清除每一頁上的表格,很高興聽到。請在下面找到我的Python代碼:for year in range(2015,2016):    for week in range(1,2):        page_url = url+str(year) + '/' + 'week-' + str(week)        driver.get(page_url)        lists = driver.find_elements_by_xpath("//a[@data-linktype='title']")                        links = []        for l in lists:            print(l.get_attribute('href'))            links.append(l.get_attribute('href'))                for link in links:            driver.get(link)                        driver.find_element_by_xpath("//a[@href='#songinfo']").click()                        songs = driver.find_elements_by_xpath(""".//*[@id="songinfo"]/table/tbody/tr[2]/td""")            songs_list = []            for s in songs:                 print(s.get_attribute('innerHTML'))                songs_list.append(s.get_attribute('innerHTML'))```
查看完整描述

1 回答

?
12345678_0001

TA貢獻1802條經驗 獲得超5個贊

該行songs_list = []位于for link in links循環內部,因此每次新的迭代都會將其設置為空列表(然后附加到這個新的空列表)。結束所有循環后,您只能看到songs_list創建的循環。


最簡單的解決方法是將行放在songs_list = []所有 for 循環之外,例如:


songs_list = []

for year in range(2015,2016):

    for week in range(1,2):

        # etc


查看完整回答
反對 回復 2023-06-27
  • 1 回答
  • 0 關注
  • 135 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號