python爬取数据保存为txt格式
#encoding:'utf-8'
import urllib.request
from bs4 import BeautifulSoup
import os
import time
#找到網址
def getDatas():
?? ?url="https://movie.douban.com/top250"
?? ?# url="file:///E:/scrapy/2018-04-27/movie/movie.html"
?? ?# 打開網頁
?? ?res=urllib.request.urlopen(url)
?? ?# 轉化格式
?? ?response=BeautifulSoup(res,'html.parser')
?? ?# 找到想要數據的父元素
?? ?datas=response.find_all('div',{'class':'item'})
?? ?# print(datas)
?? ?#創建存放數據的文件夾
?? ?folder_name="output"
?? ?if not os.path.exists(folder_name):
?? ??? ??? ?os.mkdir(folder_name)
?? ?# 定義文件
?? ?current_time=time.strftime('%Y-%m-%d',time.localtime())
?? ?file_name="move"+current_time+".txt"
?? ?# 文件路徑
?? ?file_path=folder_name+"/"+file_name
?? ?for item in datas:
?? ??? ?# print(item)
?? ??? ?rank=item.find('div',{'class':'pic'}).find('em').get_text()
?? ??? ?title=item.find('div',{'class':'info'}).find('div',{'class':'hd'}).find('a').find('span',{'class':'title'}).get_text()
?? ??? ?picUrl=item.find('div',{'class':'pic'}).find('a').find('img').get('src')
?? ??? ?# print(picUrl)
?? ??? ?# 保存數據為txt格式
?? ??? ?try:
?? ??? ??? ?with open(file_path,'a',encoding="utf-8") as fp:
?? ??? ??? ??? ?fp.write("排名:"+rank+'\n')
?? ??? ??? ??? ?fp.write("標題:"+title+'\n')
?? ??? ??? ??? ?fp.write("圖片路徑:"+picUrl+'\n\n')
?? ??? ?except IOError as err:
?? ??? ??? ?print('error'+str(err))
?? ??? ?finally:
?? ??? ??? ?fp.close()
?? ?pass
getDatas()
# 爬取數據
?
總結
以上是生活随笔為你收集整理的python爬取数据保存为txt格式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: odoo12模块目录
- 下一篇: python将输入语句中的字母、空格、数