欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python+selenium爬取微博熱搜存入Mysql的實現(xiàn)方法

 更新時間:2021年01月27日 11:45:00   作者:也曾rgnxhw  
這篇文章主要介紹了python+selenium爬取微博熱搜存入Mysql的實現(xiàn)方法,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下

最終的效果

廢話不多少,直接上圖

在這里插入圖片描述

這里可以清楚的看到,數(shù)據(jù)庫里包含了日期,內(nèi)容,和網(wǎng)站link
下面我們來分析怎么實現(xiàn)

使用的庫

import requests
from selenium.webdriver import Chrome, ChromeOptions
import time
from sqlalchemy import create_engine
import pandas as pd

目標分析

這是微博熱搜的link:點我可以到目標網(wǎng)頁

在這里插入圖片描述

首先我們使用selenium對目標網(wǎng)頁進行請求
然后我們使用xpath對網(wǎng)頁元素進行定位,遍歷獲得所有數(shù)據(jù)
然后使用pandas生成一個Dataframe對像,直接存入數(shù)據(jù)庫

一:得到數(shù)據(jù)

在這里插入圖片描述

我們看到,使用xpath可以得到51條數(shù)據(jù),這就是各熱搜,從中我們可以拿到鏈接和標題內(nèi)容

all = browser.find_elements_by_xpath('//*[@id="pl_top_realtimehot"]/table/tbody/tr/td[2]/a') #得到所有數(shù)據(jù)
	context = [i.text for i in c] # 得到標題內(nèi)容
  links = [i.get_attribute('href') for i in c] # 得到link

然后我們再使用zip函數(shù),將date,context,links合并
zip函數(shù)是將幾個列表合成一個列表,并且按index對分列表的數(shù)據(jù)合并成一個元組,這個可以生產(chǎn)pandas對象。

dc = zip(dates, context, links)
  pdf = pd.DataFrame(dc, columns=['date', 'hotsearch', 'link'])

其中date可以使用time模塊獲得

二:鏈接數(shù)據(jù)庫

這個很容易

enging = create_engine("mysql+pymysql://root:123456@localhost:3306/webo?charset=utf8")
pdf.to_sql(name='infromation', con=enging, if_exists="append")

總代碼

from selenium.webdriver import Chrome, ChromeOptions
import time
from sqlalchemy import create_engine
import pandas as pd

def get_data():
  url = r"https://s.weibo.com/top/summary" # 微博的地址
  option = ChromeOptions()
  option.add_argument('--headless')
  option.add_argument("--no-sandbox")
  browser = Chrome(options=option)
  browser.get(url)
  all = browser.find_elements_by_xpath('//*[@id="pl_top_realtimehot"]/table/tbody/tr/td[2]/a')
  context = [i.text for i in all]
  links = [i.get_attribute('href') for i in all]
  date = time.strftime("%Y-%m-%d-%H_%M_%S", time.localtime())
  dates = []
  for i in range(len(context)):
    dates.append(date)
  # print(len(dates),len(context),dates,context)
  dc = zip(dates, context, links)
  pdf = pd.DataFrame(dc, columns=['date', 'hotsearch', 'link'])
  # pdf.to_sql(name=in, con=enging, if_exists="append")
  return pdf

def w_mysql(pdf):
  try:
    enging = create_engine("mysql+pymysql://root:123456@localhost:3306/webo?charset=utf8")
    pdf.to_sql(name='infromation', con=enging, if_exists="append")
  except:
    print('出錯了')

if __name__ == '__main__':
  xx = get_data()
  w_mysql(xx)

到此這篇關(guān)于python+selenium爬取微博熱搜存入Mysql的實現(xiàn)方法的文章就介紹到這了,更多相關(guān)python selenium爬取微博熱搜存入Mysql內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python全面解析xml文件

    Python全面解析xml文件

    這篇文章主要介紹了Python全面解析xml文件方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-02-02
  • Python文本終端GUI框架示例詳細講解

    Python文本終端GUI框架示例詳細講解

    GUI,全稱為圖形用戶界面,又稱為圖形用戶接口,是一種人與計算機通信的界面顯示格式。那么Python常用GUI框架有哪些呢?我們來看看具體介紹
    2022-11-11
  • django中path函數(shù)使用詳解

    django中path函數(shù)使用詳解

    django.urls.path是Django中用于定義URL映射規(guī)則的函數(shù)之一,本文主要介紹了django中path函數(shù)使用,具有一定的參考價值,感興趣的可以了解一下
    2023-12-12
  • python圖形繪制奧運五環(huán)實例講解

    python圖形繪制奧運五環(huán)實例講解

    在本文里我們給大家整理了一篇關(guān)于python圖形繪制奧運五環(huán)的實例內(nèi)容,大家可以跟著學(xué)習(xí)下。
    2019-09-09
  • python抖音表白程序源代碼

    python抖音表白程序源代碼

    這篇文章主要為大家詳細介紹了python抖音表白程序源代碼,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-04-04
  • 利用Python+Excel制作一個視頻下載器

    利用Python+Excel制作一個視頻下載器

    說起Excel,那絕對是數(shù)據(jù)處理領(lǐng)域王者般的存在。而作為網(wǎng)紅語言Python,在數(shù)據(jù)領(lǐng)域也是被廣泛使用。本文將利用Python和Excel制作一個視頻下載器,需要的可以參考一下
    2022-05-05
  • Python數(shù)據(jù)存儲之XML文檔和字典的互轉(zhuǎn)

    Python數(shù)據(jù)存儲之XML文檔和字典的互轉(zhuǎn)

    這篇文章主要介紹了Python數(shù)據(jù)存儲之XML文檔和字典的互轉(zhuǎn),通過如何將一個字典轉(zhuǎn)換為XML文檔,并將該XML文檔保存為文本文件的提問展開主題相關(guān)介紹,需要的朋友可以參考一下下面文章內(nèi)容
    2022-06-06
  • python飛機大戰(zhàn)pygame碰撞檢測實現(xiàn)方法分析

    python飛機大戰(zhàn)pygame碰撞檢測實現(xiàn)方法分析

    這篇文章主要介紹了python飛機大戰(zhàn)pygame碰撞檢測實現(xiàn)方法,結(jié)合實例形式分析了Python使用pygame實現(xiàn)飛機大戰(zhàn)游戲中碰撞檢測的原理與相關(guān)操作技巧,需要的朋友可以參考下
    2019-12-12
  • Django使用echarts進行可視化展示的實踐

    Django使用echarts進行可視化展示的實踐

    可視化是將數(shù)據(jù)轉(zhuǎn)換成圖形或圖像在屏幕上顯示出來,本文主要介紹了Django使用echarts進行可視化展示的實踐,感興趣的可以了解一下
    2021-06-06
  • python 基礎(chǔ)學(xué)習(xí)第二彈 類屬性和實例屬性

    python 基礎(chǔ)學(xué)習(xí)第二彈 類屬性和實例屬性

    本人c程序員,最近開始學(xué)python,深深的被python的強大所吸引,今后也會把學(xué)到的點點滴滴記錄下來,現(xiàn)在分享一下關(guān)于類屬性和實例屬性的一些問題,很基礎(chǔ)的東西
    2012-08-08

最新評論