zoukankan      html  css  js  c++  java
  • selenium爬取NBA并将数据存储到MongoDB

    from selenium import webdriver
    driver = webdriver.Chrome()
    url = 'https://www.basketball-reference.com/leagues/NBA_2019.html'
    driver.get(url)
    # 操作等待 driver.implicitly_wait(
    3) list_name = driver.find_elements_by_xpath('//*[@id="team-stats-per_game"]/tbody/tr/td[1]/a') # 三分球命中次数 list_3p = driver.find_elements_by_xpath('//*[@id="team-stats-per_game"]/tbody/tr/td[7]') # 三分球投射次数 list_3pa = driver.find_elements_by_xpath('//*[@id="team-stats-per_game"]/tbody/tr/td[8]') # 二分球命中次数 list_2p = driver.find_elements_by_xpath('//*[@id="team-stats-per_game"]/tbody/tr/td[10]') # 二分球投射次数 list_2pa = driver.find_elements_by_xpath('//*[@id="team-stats-per_game"]/tbody/tr/td[11]') # 导包 from pymongo import MongoClient # 链接mongo con = MongoClient(host='127.0.0.1',port=27017) # 链接数据库 db = con['python'] # 授权 db.authenticate(name='lu',password='123456',source='admin') # 链接集合 coll = db['NBA'] length = len(list_name) for i in range(length):
      # 将selenium对象转成文本 name
    = list_name[i].text p3 = list_3p[i].text pa3 = list_3pa[i].text p2 = list_2p[i].text pa2 = list_2pa[i].text ret = coll.insert_one({'team队伍':name,'p3三分球命中次数':p3,'p3a三分球投射次数':pa3,'p2二分球命中次数':p2,'p2a三分球投射次数':pa2})

    selenium:浏览器自动化测试框架 ,Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。

    mongodb:是一个基于分布式文件存储的数据库。由C++语言编写。介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。

    业务需求:

    将某网站的数据用python爬虫技术爬取下来,并且存储到mongodb数据库。

  • 相关阅读:
    Python 写Windows Service服务程序
    关于Python 获取windows信息收集
    Pyqt 获取windows系统中已安装软件列表
    Python 打开目录与指定文件
    【转载】Pyqt 编写的俄罗斯方块
    Python win32api提取exe图标icon
    Pyqt QListWidget之缩略图列表
    Pyqt 时时CPU使用情况
    Python 的三目运算
    Chrome Crx 插件下载
  • 原文地址:https://www.cnblogs.com/lutt/p/10810581.html
Copyright © 2011-2022 走看看