python把第x列數據寫入第x個文件
問題描述
Python爬蟲一共需要爬取65頁數據,每頁數據的列數不確定。現在我能把每一列的數據抓下來,但是因為列數不確定,寫入的文件名就不能確定。問題在于怎么才能把第x列數據寫入第x個文件。也就是如何才能動態選擇file=的文件名。代碼如下:
f_1 = open(’fitment/1.txt’, ’a’)f_2 = open(’fitment/2.txt’, ’a’)f_3 = open(’fitment/3.txt’, ’a’)for i in range(66): pr = random.choice(proxy) url = ’https://*****’ + str(i) + ’****’ page_url = requests.get(url, headers=head, proxies=pr) page_get = page_url.text page_text = BeautifulSoup(page_get, ’lxml’) fitment_1 = page_text.find_all(’tr’, {’class’: ’fitment listRowEven’}) for each_tag_1 in fitment_1:td_text_1 = each_tag_1.find_all(’td’)for x in range(len(td_text_1)+1): print(td_text_1[x].string, file=)
網頁的結構類如下,每個tr標簽即為一列,具體要抓取的數據位于每個td標簽內
<tr> <td>...</td> <td>...</td> <td>...</td> <td>...</td></tr><tr> <td>...</td> <td>...</td> <td>...</td> <td>...</td></tr>
問題解答
回答1:先不要定義好open文件對象,可以根據列數打開相應的文件操作
with open(’列數.txt’, ’a’) as f: f.write(’內容’)
相關文章:
1. bootstrp是col-md-12列的,只有col-md-10有內容,可以讓沒有內容的不占據位置嗎;2. java - 如何用圖畫的方式有效地表示多線程?3. 在windows下安裝docker Toolbox 啟動Docker Quickstart Terminal 失敗!4. python - Fiddler+Android模擬器抓取app,json數據被加密了,如何解析?5. windows C++ 一般使用什么技術調用Webservice接口6. javascript - 小程序中遇到js執行時序問題7. html5 - 剛接觸H5,為什么我覺得很多標簽都沒什么用呢?8. java-ee - JAVA8 lambdas表達式 改變外面變量的值9. html - eclipse 標簽錯誤10. MySQL中無法修改字段名的疑問
