日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

猫眼数据SQLITE保存格式

發布時間:2023/12/14 数据库 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 猫眼数据SQLITE保存格式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

貓眼數據sqlite保存

這里主要是對sqlite數據庫保存架構的摸索

import requests from requests import request, session, RequestException import re import sqlite3# 使用GET請求到網站的html文件,正則表達式提取,保存為txt文件, # 循環訂立在大框架中def main():parse_data = parse_one_page() # 獲取的全部數據print(parse_data)dbpath = '貓眼.db' # 定義一個db文件save_dataDB(parse_data,dbpath) # 保存為sqlite文件return ## 抓取數據 def get_one_page(baseurl):try:headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_3) ''AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.162 Safari/537.36'}response = requests.get(url=baseurl, headers=headers)if response.status_code == 200: # 判斷訪問狀態碼,200代表正常訪問return response.text # 返回抓取到的數據return Noneexcept RequestException: # 報錯則返回空數據return None# 解析數據 def parse_one_page():url = 'https://maoyan.com/board/4?offset=' # 貓眼網站datalist = [] # 定義一個接收全部數據的列表for i in range(0,10):baseurl = url + str(i * 10) # 拼接urlhtml = get_one_page(baseurl) # 使用拼接的url去請求數據print(baseurl)pattern = re.compile('<dd>.*?board-index.*?>(\d+)</i>.*?data-src="(.*?)".*?name"><a'+ '.*?>(.*?)</a>.*?star">(.*?)</p>.*?releasetime">(.*?)</p>'+ '.*?integer">(.*?)</i>.*?fraction">(.*?)</i>.*?</dd>', re.S) # 使用正則表達式解析,創建一個格式模板items = re.findall(pattern, html) # 將模板套入對象for item in items:list = [] # 定義一個接收每一次循環數據的列表index = item[0] # 排名list.append(index)image = item[1] # 圖片鏈接list.append(image)title = item[2] # 電影名字list.append(title)actor = item[3] # 演員們list.append(actor)time = item[4] # 上映時間list.append(time)score = item[5].strip() + item[6].strip() # 評分(實際上是兩個數字的拼接)list.append(score)datalist.append(list) # 將每一次循環的數據保存到總列表中return datalistdef save_dataDB(parse_data,dbpath):save_data02(dbpath) # 創建數據庫conn = sqlite3.connect(dbpath) # 連接數據庫cur = conn.cursor()for data in parse_data:for index in range(len(data)):if index == 0 or index == 5: # 將數字區分continuedata[index] = '"' + data[index] + '"' # 使用“ ”區別數據# print(data)sql = """insert into cat_eye("index",image,title,actor,time,score)values(%s)""" %",".join(data)print(sql)cur.execute(sql)conn.commit()conn.close()def save_data02(dbpath):sql = '''create table cat_eye(id integerprimary key autoincrement,"index" varchar,image text,title varchar,actor text,time integer,score numeric);'''conn = sqlite3.connect(dbpath)cursor = conn.cursor()cursor.execute(sql)conn.commit()conn.close()if __name__ == '__main__':main()print("爬取完畢!!!")

execute(sql)
conn.commit()
conn.close()

if name == ‘main’:
main()
print(“爬取完畢!!!”)

總結

以上是生活随笔為你收集整理的猫眼数据SQLITE保存格式的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。