【无敌浪子】python爬取足球赛事数据
python爬虫
前言
某个夜深人静的夜晚,夜微凉风微扬,月光照进我的书房~
当我打开文件夹以回顾往事之余,惊现许多看似杂乱的无聊代码。我拍腿正坐,一个想法油然而生:“生活已然很无聊,不如再无聊些叭”。
于是,我决定开一个专题,便称之为无敌浪子的无聊小发明。 妙…啊~~~
一、代码分析
前几天实验室中貌美如花的老师问我可以做爬虫嘛,凭借大学学过爬虫一点皮毛要说会哦, 于是凭借本人精通java开发,利用java语言便可轻松地对网页数据进行爬取并处理。
一、首先定义相关网页配置文件
// 设置指定键对值的系统属性System.setProperty("webdriver.chrome.driver", "E:\\chromedriver.exe");// 创建无Chrome无头参数ChromeOptions chromeOptions = new ChromeOptions();chromeOptions.addArguments("-headless");WebDriver driver = new ChromeDriver();// driver.get("http://www.dianping.com/ruzhou/ch10");// 窗口最大化// driver.manage().window().maximize();driver.get("网址url");// 初始化 不加载图片// 设置超时5秒 默认也有的可能长一点。WebDriverWait wait = new WebDriverWait(driver, 5);wait.until(new ExpectedCondition<Boolean>() {public Boolean apply(WebDriver d) {boolean loadcomplete = d.findElement(By.tagName("body")).isDisplayed();return loadcomplete;}});
二、开启爬虫之路
Document doc = Jsoup.parse(driver.getPageSource());
// Elements container = doc.select("div.td_div");Elements container = doc.select("div.bet-main bet-main-dg"); // System.out.println(container.html());Elements table = container.select("table#MatchTable.socai");// System.out.println(table.html());Elements tr_ri_dates = table.get(0).select("tr.ttis");// 拿所有的兄弟节点List<Element> next_all = tr_ri_dates.get(0).siblingElements();// System.out.println(next_all.size());int i = 1;// 遍历所有节点String title_id = "";List<String> id_list = new ArrayList<String>();// 拿到所有的idfor (Element element : next_all) {// 没有id的是 class="niDate"// id row_3390001 row 是标题// id tr_3390001 tr的是详情内容String id_str = element.attr("id");// System.out.println(i+":"+id_str);if (id_str.indexOf("row") != -1) {// 这是标题 记录标题idtitle_id = id_str.substring(4, id_str.length());// System.out.println(title_id);id_list.add(title_id.trim());}i++;}// 把数据进行分组List<JSONObject> dataList = new ArrayList<JSONObject>();for (String id : id_list) {dataList.add(jiexi(id, next_all));}createExcel(dataList);driver.close();driver.quit();}
三、对爬取的数据进行插入execl操作
CellStyle style = wb.createCellStyle();Font font = wb.createFont();font.setColor(Font.COLOR_RED);style.setFont(font);Row row1 = sheet.createRow(((i - 1) * 32) + 1);Cell cell1 = row1.createCell(0);cell1.setCellStyle(style);cell1.setCellValue(obj.getString("bianhao"));Row row2 = sheet.createRow(((i - 1) * 32) + 2);Cell cell2 = row2.createCell(0);cell2.setCellStyle(style);cell2.setCellValue(obj.getString("bianhao") + "的胜负平");Row row3 = sheet.createRow(((i - 1) * 32) + 3);row3.createCell(0).setCellValue("第1场" + obj.getString("zhou") + obj.getString("bianhao") + " 胜平负");Row row4 = sheet.createRow(((i - 1) * 32) + 4);row4.createCell(0).setCellValue(obj.getString("vs"));Row row5 = sheet.createRow(((i - 1) * 32) + 5);row5.createCell(0).setCellValue(obj.getString("s") + "元");
运行效果如下:
啦啦啦,无敌浪子的完美之作,是不是很酷哈哈哈!!!
写在最后
交给貌美如花的大师姐哈皮,是不是很调皮,更亲近喽哈哈哈。
最后,感谢各位大大的耐心阅读,咋们下次再会~
创作不易,大侠请留步… 动起可爱的双手,来个赞再走呗 (๑◕ܫ←๑)
【无敌浪子】python爬取足球赛事数据相关推荐
- 使用python爬取足球比赛数据,关于足球预测策略模型,这是我见过唯一三年都盈利的
市场上有很多基于程序自动化的足球预测模型,我本人也不断摸索,自学python,最终实现了程序预测的自动化,并且验证了很多策略,几乎所有的模型都是阶段性表现很不错,但是长期总体下来,都达不到预期,很多时 ...
- Python应用实战-Python爬取4000+股票数据,并用plotly绘制了树状热力图(treemap)
目录: 1. 准备工作 2. 开始绘图 2.1. 简单的例子 2.2. px.treemap常用参数介绍 2.3. color_continuous_scale参数介绍 2.4. 大A股市树状热力图来 ...
- python爬去朋友圈_利用Python爬取朋友圈数据,爬到你开始怀疑人生
人生最难的事是自我认知,用Python爬取朋友圈数据,让我们重新审视自己,审视我们周围的圈子. 文:朱元禄(@数据分析-jacky) 哲学的两大问题:1.我是谁?2.我们从哪里来? 本文 jacky试 ...
- python 爬取拉钩数据
Python通过Request库爬取拉钩数据 爬取方法 数据页面 建表存储职位信息 解析页面核心代码 完整代码 结果展示 爬取方法 采用python爬取拉钩数据,有很多方法可以爬取,我采用的是通过Re ...
- python 爬取拉钩网数据
python 爬取拉钩网数据 完整代码下载:https://github.com/tanjunchen/SpiderProject/blob/master/lagou/LaGouSpider.py # ...
- 利用Python爬取国家水稻数据中心的品种数据
利用Python爬取国家水稻数据中心的品种数据 一.页面获取 python可以进行对网页的访问,主要用到requests,beautifulsoup4包. 首先新建一个page的py文件,用来获取页面 ...
- 利用Python爬取朋友圈数据,爬到你开始怀疑人生
人生最难的事是自我认知,用Python爬取朋友圈数据,让我们重新审视自己,审视我们周围的圈子. 文:朱元禄(@数据分析-jacky) 哲学的两大问题:1.我是谁?2.我们从哪里来? 本文 jacky试 ...
- 利用python爬取2019-nCoV确诊数据并制作pyecharts可视化地图
1.本章利用python爬取2019-nCoV确诊数据并制作pyecharts可视化地图: 2.主要内容为绘制出中国各省疫情数据,疫情数据从四个维度进行可视化展示:累积确诊人数.现存确诊人数.治愈人数 ...
- 用Python爬取最新股票数据含完整源代码
用Python爬取最新股票数据含完整源代码 抓取目标: url:http://webapi.cninfo.com.cn/#/marketDataDate 数据目标: 获取 证券代码 证券简称 交易日期 ...
最新文章
- Linux初学者接住了---Linux常用命令
- 博客系统评论模块列表转树形结构
- Centos7使用Docker创建Oracle11g
- (02)Verilog HDL模块
- SqlServer显示“正在还原...”
- 面试题:把字符串转换为整数
- Android Studio 4.0 / 4.0.1 无法创建Activity 问题
- MySQL-快速入门(6)连接查询、子查询、正则表达式查询、数据的插入删除更新...
- php验证码显示不了,PHP验证码无法显示的原因及解决办法
- 人工智能轨道交通行业周刊-第14期(2022.9.12-9.18)
- 实验吧-web-天下武功唯快不破
- MATLAB图形计算器去广告,Mathlab Pro安卓去谷歌版下载-Mathlab计算器安卓去广告版下载v4.11.114 手机版-西西软件下载...
- Unity5.联机笔记
- 杭州电子科技大学全国计算机排名,杭电排名为什么比211还高,杭州电子科技大学是211吗...
- 用Excel编辑SQL脚本
- echarts 3d饼图
- MATLAB中table结构学习笔记01_table数据结构的创建
- TMMi测试能力成熟度模型简介
- 明仔说机:目前电视盒子哪个最好?五大口碑电视盒子推荐
- php加密函数与解密函数