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爬取足球赛事数据相关推荐

  1. 使用python爬取足球比赛数据,关于足球预测策略模型,这是我见过唯一三年都盈利的

    市场上有很多基于程序自动化的足球预测模型,我本人也不断摸索,自学python,最终实现了程序预测的自动化,并且验证了很多策略,几乎所有的模型都是阶段性表现很不错,但是长期总体下来,都达不到预期,很多时 ...

  2. Python应用实战-Python爬取4000+股票数据,并用plotly绘制了树状热力图(treemap)

    目录: 1. 准备工作 2. 开始绘图 2.1. 简单的例子 2.2. px.treemap常用参数介绍 2.3. color_continuous_scale参数介绍 2.4. 大A股市树状热力图来 ...

  3. python爬去朋友圈_利用Python爬取朋友圈数据,爬到你开始怀疑人生

    人生最难的事是自我认知,用Python爬取朋友圈数据,让我们重新审视自己,审视我们周围的圈子. 文:朱元禄(@数据分析-jacky) 哲学的两大问题:1.我是谁?2.我们从哪里来? 本文 jacky试 ...

  4. python 爬取拉钩数据

    Python通过Request库爬取拉钩数据 爬取方法 数据页面 建表存储职位信息 解析页面核心代码 完整代码 结果展示 爬取方法 采用python爬取拉钩数据,有很多方法可以爬取,我采用的是通过Re ...

  5. python 爬取拉钩网数据

    python 爬取拉钩网数据 完整代码下载:https://github.com/tanjunchen/SpiderProject/blob/master/lagou/LaGouSpider.py # ...

  6. 利用Python爬取国家水稻数据中心的品种数据

    利用Python爬取国家水稻数据中心的品种数据 一.页面获取 python可以进行对网页的访问,主要用到requests,beautifulsoup4包. 首先新建一个page的py文件,用来获取页面 ...

  7. 利用Python爬取朋友圈数据,爬到你开始怀疑人生

    人生最难的事是自我认知,用Python爬取朋友圈数据,让我们重新审视自己,审视我们周围的圈子. 文:朱元禄(@数据分析-jacky) 哲学的两大问题:1.我是谁?2.我们从哪里来? 本文 jacky试 ...

  8. 利用python爬取2019-nCoV确诊数据并制作pyecharts可视化地图

    1.本章利用python爬取2019-nCoV确诊数据并制作pyecharts可视化地图: 2.主要内容为绘制出中国各省疫情数据,疫情数据从四个维度进行可视化展示:累积确诊人数.现存确诊人数.治愈人数 ...

  9. 用Python爬取最新股票数据含完整源代码

    用Python爬取最新股票数据含完整源代码 抓取目标: url:http://webapi.cninfo.com.cn/#/marketDataDate 数据目标: 获取 证券代码 证券简称 交易日期 ...

最新文章

  1. Linux初学者接住了---Linux常用命令
  2. 博客系统评论模块列表转树形结构
  3. Centos7使用Docker创建Oracle11g
  4. (02)Verilog HDL模块
  5. SqlServer显示“正在还原...”
  6. 面试题:把字符串转换为整数
  7. Android Studio 4.0 / 4.0.1 无法创建Activity 问题
  8. MySQL-快速入门(6)连接查询、子查询、正则表达式查询、数据的插入删除更新...
  9. php验证码显示不了,PHP验证码无法显示的原因及解决办法
  10. 人工智能轨道交通行业周刊-第14期(2022.9.12-9.18)
  11. 实验吧-web-天下武功唯快不破
  12. MATLAB图形计算器去广告,Mathlab Pro安卓去谷歌版下载-Mathlab计算器安卓去广告版下载v4.11.114 手机版-西西软件下载...
  13. Unity5.联机笔记
  14. 杭州电子科技大学全国计算机排名,杭电排名为什么比211还高,杭州电子科技大学是211吗...
  15. 用Excel编辑SQL脚本
  16. echarts 3d饼图
  17. MATLAB中table结构学习笔记01_table数据结构的创建
  18. TMMi测试能力成熟度模型简介
  19. 明仔说机:目前电视盒子哪个最好?五大口碑电视盒子推荐
  20. php加密函数与解密函数

热门文章

  1. 60-网络分层的真实含义是什么?
  2. java同时访问多个接口
  3. VS+Qt+C++银行排队叫号系统
  4. 发生在动物身上的哲理小故事
  5. 游戏开发中常用的数学知识---矩阵(一)
  6. 面试中一些较为复杂的常见的算法
  7. 《 最新中国高校毕业生薪资报告 》
  8. 单元格等于计算机日期,Excel相邻单元格快速填入相同日期的几种方法
  9. section怎么制造图框_cad中如何制作带属性块的图框
  10. bind()方法实现