關于python list 寫進txt中的問題
問題描述
各位大神好,我爬取騰訊新聞的新聞標題加入到一個列表當中,在用file.write()寫進 新聞.txt的時候,為啥老是寫入列表的最后一個呢??
from bs4 import BeautifulSoupimport requestsurl = ’http://news.qq.com/’wb_data = requests.get(url).textsoup = BeautifulSoup(wb_data,’lxml’)news_titles = soup.select(’p.text > em.f14 > a.linkto’)for n in news_titles: title = n.get_text() link = n.get('href') file = open(’/Users/sufan/Desktop/新聞.txt’, ’w’) b = [] b.append(title + ’鏈接’ + link) file.write(str(b))
這個是我爬取出來的東西(print(b)的結果)
這個是寫入txt中的內容
問題解答
回答1:文件操作放循環里了?這樣每次操作每次打開文件每次寫入覆蓋…
# -*- coding: utf-8 -*-import sysreload(sys)sys.setdefaultencoding(’utf-8’)from bs4 import BeautifulSoupimport requestsurl = ’http://news.qq.com/’wb_data = requests.get(url).textsoup = BeautifulSoup(wb_data,’lxml’)news_titles = soup.select(’p.text > em.f14 > a.linkto’)file = open(’新聞.txt’, ’a’)for n in news_titles: title = n.get_text() link = n.get('href') b = str(title) + ’ 鏈接: ’ + link +'n' file.write(str(b))file.close()回答2:
for n in news_titles: title = n.get_text() link = n.get('href') b = [] b.append(title + ’鏈接’ + link) with open(’/Users/sufan/Desktop/新聞.txt’, ’w’) as file: file.write(str(b))回答3:
寫的動作放錯地方了
相關文章:
1. Span標簽2. angular.js - 如何通俗易懂的解釋“依賴注入”?3. dockerfile - [docker build image失敗- npm install]4. mysql - 記得以前在哪里看過一個估算時間的網站5. docker start -a dockername 老是卡住,什么情況?6. 在windows下安裝docker Toolbox 啟動Docker Quickstart Terminal 失敗!7. docker images顯示的鏡像過多,狗眼被亮瞎了,怎么辦?8. docker gitlab 如何git clone?9. angular.js - angularjs如何傳遞id給另一個視圖 根據id獲取json數據?10. 數據庫無法進入
