中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

濟南哪家公司做網(wǎng)站微信指數(shù)是搜索量嗎

濟南哪家公司做網(wǎng)站,微信指數(shù)是搜索量嗎,濰坊 網(wǎng)站建設,歐陽娜娜自創(chuàng)品牌文章目錄 基于Python旅游數(shù)據(jù)采集可視化分析推薦系統(tǒng)一、項目概述二、項目說明三、開發(fā)環(huán)境四、功能實現(xiàn)五、系統(tǒng)頁面實現(xiàn)用戶登錄注冊系統(tǒng)首頁數(shù)據(jù)操作管理價格與銷量分析旅游城市和景點等級分析旅游數(shù)據(jù)評分情況分析旅游數(shù)據(jù)評論情況分析旅游景點推薦Django系統(tǒng)后臺管理 六、…

文章目錄

  • 基于Python旅游數(shù)據(jù)采集可視化分析推薦系統(tǒng)
    • 一、項目概述
    • 二、項目說明
    • 三、開發(fā)環(huán)境
    • 四、功能實現(xiàn)
    • 五、系統(tǒng)頁面實現(xiàn)
      • 用戶登錄注冊
      • 系統(tǒng)首頁
      • 數(shù)據(jù)操作管理
      • 價格與銷量分析
      • 旅游城市和景點等級分析
      • 旅游數(shù)據(jù)評分情況分析
      • 旅游數(shù)據(jù)評論情況分析
      • 旅游景點推薦
      • Django系統(tǒng)后臺管理
    • 六、結(jié)語

基于Python旅游數(shù)據(jù)采集可視化分析推薦系統(tǒng)

一、項目概述

在互聯(lián)網(wǎng)時代,各行各業(yè)的人們都在尋求增長點,人們的日常生活越來越離不開互聯(lián)網(wǎng)。以旅游信息為例,線下大量的各種旅游信息基本只會出現(xiàn)在旅游會上,但是現(xiàn)如今,人們越來越重視時間成本,所以越來越多的年輕人在網(wǎng)上查找自己想要查找的旅游就業(yè)信息。然而,在互聯(lián)網(wǎng)信息和海量數(shù)據(jù)源混合的情況下,如何快速精確的找到自己想要的數(shù)據(jù)是一個值得探討的問題。

本系統(tǒng)主要針對解決獲取旅游信息滯后、參加線下旅行社和人工檢索時間成本高等問題,運用網(wǎng)絡爬蟲信息技術設計思想,實現(xiàn)了一個基于Python的旅游信息推薦系統(tǒng)。本系統(tǒng)以Python語言為基礎,使用 requests爬蟲對去哪兒旅游信息源進行抓取,針對網(wǎng)頁信息編寫抽取規(guī)則,對旅游信息進行必要的過濾和提取,使用MySql對旅游信息進行數(shù)據(jù)存儲。然后使用 Python 開源web框架 Django進行系統(tǒng)搭建,基于旅游信息采用機器學習協(xié)同過濾推薦算法完成對用戶的旅游信息推薦,完成整個爬取以及數(shù)據(jù)檢索到成功進行旅游推薦的網(wǎng)頁端操作展示。

二、項目說明

基于python旅游采集數(shù)據(jù)分析可視化推薦系統(tǒng)是基于Django框架開發(fā)的一個旅游信息采集和推薦的應用。該系統(tǒng)通過爬蟲技術從各個旅游網(wǎng)站抓取旅游信息,并利用推薦算法對用戶進行個性化推薦,同時提供可視化展示界面。

以下是該系統(tǒng)的主要功能和組成部分的介紹:

旅游信息采集:系統(tǒng)通過編寫爬蟲程序,定期從各大旅游網(wǎng)站抓取旅游景點、酒店、機票等相關信息,包括價格、評價、位置等。這些采集到的數(shù)據(jù)會被保存到數(shù)據(jù)庫中供后續(xù)使用。

用戶注冊與登錄:用戶可以注冊自己的賬號,并通過登錄來獲取個性化推薦和享受更多功能。

個性化推薦:系統(tǒng)會根據(jù)用戶的歷史瀏覽記錄、收藏記錄以及其他行為數(shù)據(jù),利用推薦算法生成個性化推薦結(jié)果。推薦算法使用協(xié)同過濾、內(nèi)容過濾方法,根據(jù)用戶的興趣和偏好為其推薦最相關的旅游信息。

可視化展示界面:系統(tǒng)會將采集的旅游信息以可視化方式展示給用戶,包括地圖標記、圖片展示、價格對比等功能。用戶可以通過地圖選擇感興趣的地區(qū),查看該地區(qū)的旅游景點、酒店等信息。

用戶交互和反饋:系統(tǒng)提供用戶評價、評論和收藏等功能,用戶可以對自己的旅游經(jīng)歷進行評價,同時也可以保存自己喜歡的旅游信息以便日后查看。

后臺管理:系統(tǒng)提供一個后臺管理界面,管理員可以對用戶信息、采集的數(shù)據(jù)、推薦算法參數(shù)等進行管理和配置。

三、開發(fā)環(huán)境

開發(fā)環(huán)境版本/工具
PYTHON3.9.0
開發(fā)工具PyCharm2021.2.1
操作系統(tǒng)Windows 10
內(nèi)存要求16GB
瀏覽器Firefox
數(shù)據(jù)庫MySQL 8.0.26
數(shù)據(jù)庫工具Navicat 15 for MySQL
項目技術棧Python語言、Django框架、MySQL數(shù)據(jù)庫、requests網(wǎng)絡爬蟲技術、機器學習算法、BootStrap、數(shù)據(jù)可視化

四、功能實現(xiàn)

系統(tǒng)爬蟲部分核心代碼

  def spiderMain(self,resp,province):respJSON = resp.json()['data']['sightList']for index,travel in enumerate(respJSON):print('正在爬取該頁第%s數(shù)據(jù)' % str(index + 1))time.sleep(2)detailAddress = travel['address']discount = travel['discount']shortIntro = travel['intro']price = travel['qunarPrice']saleCount = travel['saleCount']try:level = travel['star'] + '景區(qū)'except:level = '未評價'title = travel['sightName']cover = travel['sightImgURL']sightId = travel['sightId']# ================================= 詳情爬取detailUrl = self.detailUrl % sightIdrespDetailXpath = etree.HTML(self.send_request(detailUrl).text)score = respDetailXpath.xpath('//span[@id="mp-description-commentscore"]/span/text()')if not score:score = 0star = 0else:score = score[0]star = int(float(score)*10)commentsTotal = respDetailXpath.xpath('//span[@class="mp-description-commentCount"]/a/text()')[0].replace('條評論','')detailIntro = respDetailXpath.xpath('//div[@class="mp-charact-intro"]//p/text()')[0]img_list = respDetailXpath.xpath('//div[@class="mp-description-image"]/img/@src')[:6]# ================================= 評論爬取commentSightId = respDetailXpath.xpath('//div[@class="mp-tickets-new"]/@data-sightid')[0]commentsUrl = self.commentUrl % commentSightIdcomments = []try:commentsList = self.send_request(commentsUrl).json()['data']['commentList']for c in commentsList:if c['content'] != '用戶未點評,系統(tǒng)默認好評。':author = c['author']content = c['content']date = c['date']score = c['score']comments.append({'author': author,'content': content,'date': date,'score': score})except:comments = []resultData = []

在這里插入圖片描述

基于用戶的協(xié)同過濾推薦算法,用于根據(jù)用戶的評分數(shù)據(jù)推薦其可能喜歡的其他景點。

基于用戶的協(xié)同過濾算法部分核心代碼:

在這里插入圖片描述

def user_bases_collaborative_filtering(user_id,user_ratings,top_n=20):
# def user_bases_collaborative_filtering(user_id, user_ratings, top_n=3):# 獲取目標用戶的評分數(shù)據(jù)target_user_ratings = user_ratings[user_id]# 初始化一個字段,用于保存其他用戶與目標用戶的相似度得分user_similarity_scores = {}# 將目標用戶的評分轉(zhuǎn)化為numpy數(shù)組target_user_ratings_list = np.array([rating for _ , rating in target_user_ratings.items()])# 計算目標用戶與其他用戶之間的相似度得分for user,ratings in user_ratings.items():if user == user_id:continue# 將其他用戶的評分轉(zhuǎn)化為numpy數(shù)組user_ratings_list = np.array([ratings.get(item,0) for item in target_user_ratings])# 計算余弦相似度similarity_score = cosine_similarity([user_ratings_list],[target_user_ratings_list])[0][0]user_similarity_scores[user] = similarity_score# 對用戶相似度得分進行降序排序sorted_similar_user = sorted(user_similarity_scores.items(),key=lambda x:x[1],reverse=True)# 選擇 TOP N 個相似用戶喜歡的景點 作為推薦結(jié)果recommended_items = set()for similar_user,_ in sorted_similar_user[:top_n]:recommended_items.update(user_ratings[similar_user].keys())# 過濾掉目標用戶已經(jīng)評分過的景點recommended_items = [item for item in recommended_items if item not in target_user_ratings]return recommended_items
  1. user_bases_collaborative_filtering 函數(shù)接受三個參數(shù):
    • user_id: 目標用戶的ID。
    • user_ratings: 包含用戶評分信息的字典,其中鍵是用戶ID,值是包含景點及其評分的字典。
    • top_n: 選擇推薦結(jié)果的前N個景點,默認為20。
  2. target_user_ratings = user_ratings[user_id]:獲取目標用戶的評分數(shù)據(jù),即目標用戶對各個景點的評分。
  3. user_similarity_scores = {}:初始化一個空字典,用于保存其他用戶與目標用戶的相似度得分。
  4. target_user_ratings_list = np.array([...]):將目標用戶的評分轉(zhuǎn)換為 NumPy 數(shù)組,以便后續(xù)計算余弦相似度。
  5. 遍歷 user_ratings 中的每個用戶,計算目標用戶與其他用戶之間的相似度得分:
    • 將其他用戶的評分轉(zhuǎn)化為 NumPy 數(shù)組。
    • 使用余弦相似度計算兩個用戶之間的相似度得分。
    • 將相似度得分存儲在 user_similarity_scores 字典中。
  6. sorted_similar_user = sorted(user_similarity_scores.items(),key=lambda x:x[1],reverse=True):對用戶相似度得分進行降序排序,得到一個包含用戶ID和相似度得分的元組列表。
  7. recommended_items = set():初始化一個集合,用于保存推薦的景點。
  8. 遍歷排序后的相似用戶列表,選擇前 top_n 個相似用戶喜歡的景點,將這些景點添加到 recommended_items 集合中。
  9. recommended_items = [item for item in recommended_items if item not in target_user_ratings]:過濾掉目標用戶已經(jīng)評分過的景點,得到最終的推薦結(jié)果。
  10. 返回 recommended_items,即推薦給目標用戶的景點列表。

這個函數(shù)接受目標用戶ID、用戶評分字典以及要返回的推薦結(jié)果數(shù)量作為參數(shù)。它計算目標用戶與其他用戶的相似度得分,然后選擇相似度最高的用戶喜歡的景點作為推薦結(jié)果。

– 獲取目標用戶的評分數(shù)據(jù)

– 初始化一個字典,用于保存其他用戶與目標用戶的相似度得分

– 將目標用戶的評分轉(zhuǎn)化為numpy數(shù)組

– 計算目標用戶與其他用戶之間的相似度得分(余弦相似度)

– 對用戶相似度得分進行降序排序

– 選擇TOP N個相似用戶喜歡的景點作為推薦結(jié)果

– 過濾掉目標用戶已經(jīng)評分過的景點

五、系統(tǒng)頁面實現(xiàn)

啟動項目,在終端窗口輸入命令,這里我設置的端口在8091:

python manage.py runserver 8091

在這里插入圖片描述

用戶登錄注冊

在這里插入圖片描述

系統(tǒng)首頁

在這里插入圖片描述
在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

數(shù)據(jù)操作管理

在這里插入圖片描述

價格與銷量分析

在這里插入圖片描述

旅游城市和景點等級分析

在這里插入圖片描述

旅游數(shù)據(jù)評分情況分析

在這里插入圖片描述

旅游數(shù)據(jù)評論情況分析

在這里插入圖片描述

旅游景點推薦

在這里插入圖片描述

Django系統(tǒng)后臺管理

http://127.0.0.1:8091/admin

在這里插入圖片描述
在這里插入圖片描述

在這里插入圖片描述
在這里插入圖片描述

六、結(jié)語

基于python旅游采集數(shù)據(jù)分析可視化推薦系統(tǒng)的目標是為用戶提供便捷的旅游信息獲取和個性化推薦,并通過可視化展示使用戶更好地了解和選擇適合自己的旅游產(chǎn)品。它可以幫助用戶節(jié)省時間和精力,提高旅行的滿意度。

需項目資料/商業(yè)合作/交流探討等可以添加下面?zhèn)€人名片,后續(xù)有時間會持續(xù)更新更多優(yōu)質(zhì)內(nèi)容,感謝各位的喜歡與支持!

http://www.risenshineclean.com/news/41668.html

相關文章:

  • 怎么做wordpress主題模板福州seo網(wǎng)絡推廣
  • 刷qq會員自己做網(wǎng)站杭州正規(guī)引流推廣公司
  • 石家莊做網(wǎng)站建設的公司排名百度公司的發(fā)展歷程
  • 免費網(wǎng)站制作公司優(yōu)化網(wǎng)站排名軟件
  • 女子醫(yī)院網(wǎng)站設計怎么做欒城seo整站排名
  • 用rp怎么做網(wǎng)站按鈕下拉菜單免費發(fā)廣告的網(wǎng)站大全
  • 網(wǎng)站建設排期什么是網(wǎng)站推廣?
  • 福州網(wǎng)站建設哪家好班級優(yōu)化大師免費下載安裝
  • 政府網(wǎng)站html5媒體平臺
  • 動態(tài)網(wǎng)站商品瀏覽怎么做seo流量排名軟件
  • 注冊深圳公司的好處惠州抖音seo策劃
  • 網(wǎng)站后臺無法審核怎么把網(wǎng)站排名排上去
  • 近期新冠感染情況吉林網(wǎng)站seo
  • 阿里云域名怎樣做網(wǎng)站百度直播推廣
  • 電商網(wǎng)站建設流程推廣方案是什么
  • 建設銀行論壇網(wǎng)站廈門seo搜索引擎優(yōu)化
  • xp做網(wǎng)站服務器seo創(chuàng)業(yè)
  • asp.net網(wǎng)站開發(fā)流程手機維修培訓班學校
  • 合肥企業(yè)做網(wǎng)站app制作費用一覽表
  • 網(wǎng)站改版原則惠城網(wǎng)站設計
  • 什么軟件做高級網(wǎng)站網(wǎng)絡推廣企業(yè)
  • 微信小程序開發(fā)技術棧c盤優(yōu)化大師
  • 網(wǎng)站關鍵詞推廣方案國產(chǎn)長尾關鍵詞拘挖掘
  • 張家口網(wǎng)站開發(fā)電子商務網(wǎng)站有哪些?
  • 網(wǎng)站面包屑導航設計即位置導航青島網(wǎng)絡科技公司排名
  • 互聯(lián)網(wǎng)裝修服務平臺成都網(wǎng)站優(yōu)化及推廣
  • 想找人做網(wǎng)站 要怎么選擇如何用百度平臺營銷
  • 深圳市做網(wǎng)站有哪些公司建站推廣網(wǎng)站
  • .org做商業(yè)網(wǎng)站跟我學seo
  • 網(wǎng)站建設頁面設計規(guī)格百度指數(shù)與百度搜索量