美文网首页
静态站虎扑NBA新闻爬取

静态站虎扑NBA新闻爬取

作者: 波波在敲代码 | 来源:发表于2019-09-17 17:43 被阅读0次

爬取豆瓣电影top250的那个爬虫框架爬取静态网站非常好用,今天练习了一下,套用并且对细节进行了一些改进,用来爬取虎扑NBA这个静态站,其实这个比豆瓣电影的结构更简单一些。

# import library
import requests
from bs4 import BeautifulSoup
import os

# get html text 标准的请求网页框架
def fGetHtmlText(vUrl):
    try:
        vHeaders = {"user-agent": "Mozilla/5.0"}
        r = requests.get(vUrl, headers = vHeaders)
        r.raise_for_status()
        r.encoding = r.apparent_encoding        
        return(r.text)
    except:
        print("There is something wrong!")

# analysis the html text 使用Beautiful Soup 4解析网页,提取需要的部分,bs4、xPath和正则是爬虫提取内容的3种主要方法,保存文件的函数套用在数据提取部分
def fSoup(vHtml):
    vSoup = BeautifulSoup(vHtml, "html.parser")
    # css selector
    vDivNewsList = vSoup.select(".news-list li")
    for vLi in vDivNewsList:
        # title
        vTitle = vLi.find("h4").a.text
        # where the news come from
        vComeFrom = vLi.find("span", class_ = "comeFrom").a.text
        # new's url in HuPu
        vNewsUrl = vLi.find("h4").a["href"]
        # new's original url
        vComeFromUrl = vLi.find("span", class_ = "comeFrom").a["href"]
        # save data
        fSaveData(vTitle, vComeFrom, vNewsUrl, vComeFromUrl)

# save data 套用于网页解析部分,用于保存数据
def fSaveData(title, comeFrom, newsUrl, comeFromUrl):
    f = open('F:\\PythonData\\huPuTiYu\\huPuTiYu.csv', 'a')
    f.write(f'{title}, {comeFrom}, {newsUrl}, {comeFromUrl}\n')
    f.closed 

# judgeing if there is the file and folder 判定文件夹及文件是否存在,用于主程序运行之前
def fJudgeFile():
    if os.path.exists("F:\\PythonData\\huPuTiYu\\") == False:
        os.makedirs("F:\\PythonData\\huPuTiYu\\")
    if os.path.exists("F:\\PythonData\\huPuTiYu\\huPuTiYu.csv") == True:
        os.remove("F:\\PythonData\\huPuTiYu\\huPuTiYu.csv")  

# main function
def main(vUrl):
    fJudgeFile()
    vHtml = fGetHtmlText(vUrl)
    vText = fSoup(vHtml)  

# use the main function
vUrl = "https://voice.hupu.com/nba"
print("开始爬取")
main(vUrl)
print("爬取结束")

相关文章

  • 静态站虎扑NBA新闻爬取

    爬取豆瓣电影top250的那个爬虫框架爬取静态网站非常好用,今天练习了一下,套用并且对细节进行了一些改进,用来爬取...

  • 爬虫实战练习 - 3 - 爬取虎扑新闻

    自己的站点准备进入部署阶段了,不过内容很少,自己也没空每天去创建新文章,所以自己写了个爬虫,去爬取hupu的每天新...

  • 2019-03-13

    虎扑体育前身是于2004年建立的虎扑体育论坛(HoopChina.com),期初是论坛的形式发布有关NBA的新闻及...

  • 实战|手把手教你用Python爬取存储数据,还能自动在Excel

    大家好,我们来探讨如何爬取虎扑NBA官网数据,并且将数据写入Excel中同时自动生成折线图,主要有以下几个步骤: ...

  • 热点平台搭建(一)——Python爬取热榜数据

    寻找要爬取热榜 要爬取热榜当然先要确定爬哪个,这里我已爬取虎扑步行街热榜为例。网址:https://bbs.hup...

  • jsoup爬NBA图

    回顾上一篇爬取NBA新闻,爬图片与新闻相差不大。文章最后提到爬取图片的Java代码,接着上篇文章开始: 在图集页面...

  • 虎扑步行街爬虫分析

    最近学习scrapy,就拿虎扑练了下手,主要爬取虎扑步行街的帖子以及回帖的一些数据。 scrapy的教程可以看一下...

  • Python: 实验爬取虎扑篮球图片

    编程确实是一个锻炼逻辑思维最有效的工具之一,之前自学Python。总是陷入一个怪圈:看入门数据--一段时间不用忘记...

  • python爬虫

    一、新闻爬虫实战(爬取新浪新闻首页所有新闻内容)思路:1、爬取新闻首页2、得到各新闻链接3、爬取新闻链接4、寻找有...

  • 我不是保罗乔治,但我想拥有他一次次用绝杀拯救球队的能力

    今晚,我正在虎扑上看着NBA的新闻时,我爸用微信给我发来了语音。 我并没有立刻去听我爸发来的语音,而是坚持看完虎扑...

网友评论

      本文标题:静态站虎扑NBA新闻爬取

      本文链接:https://www.haomeiwen.com/subject/znscuctx.html