当前位置: 首页 > news >正文

网站开发人员周报绍兴seo

网站开发人员周报,绍兴seo,xiuno wordpress,电商企业网站源码一、爬取数据的基本思路 分析要爬取数据的来源 1. 查找数据来源:浏览器按 F12 或右键单击“检查”打开开发者工具查看数据获取时的请求地址 2. 查看接口信息:复制请求地址直接到浏览器地址栏输入看能不能取到数据 3. 推荐安装插件:FeHelper&a…

一、爬取数据的基本思路

分析要爬取数据的来源

1. 查找数据来源:浏览器按 F12 或右键单击“检查”打开开发者工具查看数据获取时的请求地址

2. 查看接口信息:复制请求地址直接到浏览器地址栏输入看能不能取到数据

3. 推荐安装插件:FeHelper(FeHelper - Awesome)

4. 按 F12 打开控制台,查看网络请求,复制 curl 代码便于查看和执行:

注意不要暴露 cookie!!

curl "https://api.zsxq.com/v2/hashtags/48844541281228/topics?count=20" ^-H "authority: api.zsxq.com" ^-H "accept: application/json, text/plain, */*" ^-H "accept-language: zh-CN,zh;q=0.9" ^-H "cache-control: no-cache" ^-H "origin: https://wx.zsxq.com" ^-H "pragma: no-cache" ^-H "referer: https://wx.zsxq.com/" ^--compressed

二、使用 EasyExcel 爬取数据

方式一:通过监听器读取

1. 导入 EasyExcel 的依赖

<!-- https://mvnrepository.com/artifact/com.alibaba/easyexcel -->
<dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>3.1.1</version>
</dependency>

2. 创建读对象

读对象的的两种方式:

  • 表头确定:创建对象(属性即为需要的列数据)
  • 表头不确定:把每一行数据映射为 Map<String, Object>

  • 本系统的表头是确定的,读取表格中的用户名及星球编号即可,所以使用创建对象,对象的属性与表头进行绑定即可
  • 将 Excel 表格字段与 Java 对象关联起来:使用 @ExcelProperty("") 注解指定使用 index 强制匹配或根据 "str" 字符串匹配表格数据
package com.example.usercenter.once;import com.alibaba.excel.annotation.ExcelProperty;
import lombok.Data;/*** 用户信息实体对象:与 Excel 字段对应* @author Ghost* @version 1.0*/
@Data
public class TableUserData {@ExcelProperty("用户名")private String username;@ExcelProperty("星球编号")private String planetCode;}

3. 读取数据:先创建监听器,在读取数据时绑定监听器

  • 实现监听器 ReadListener 接口的 invoke() 方法,读取数据时会触发该方法
  • 实现 doAfterAllAnalysed() 方法,当所有数据读取完成就会触发一次该方法
  • 单独抽离处理逻辑,代码清晰易于维护
  • 一条一条处理,适用于数据量大的场景
package com.example.usercenter.once;import com.alibaba.excel.context.AnalysisContext;
import lombok.extern.slf4j.Slf4j;
import com.alibaba.excel.read.listener.ReadListener;@Slf4j
public class DemoDataListener implements ReadListener<TableUserData> {/*** 这个每一条数据解析都会来调用** @param data    one row value. Is is same as {@link AnalysisContext#readRowHolder()}* @param context*/@Overridepublic void invoke(TableUserData data, AnalysisContext context) {System.out.println(data);// 输出每次解析到的数据}/*** 所有数据解析完成了 都会来调用** @param context*/@Overridepublic void doAfterAllAnalysed(AnalysisContext context) {log.info("所有数据解析完成!");}
}

 4. 绑定监听器,读取 Excel 数据

  • 在 resources 目录下新建一个 testUser.xls 作为测试使用
  • 绑定监听器 DemoDataListener
  • 每次解析一条数据,每次解析都会调用 invoke() 方法输出数据
package com.example.usercenter.once;import com.alibaba.excel.EasyExcel;/*** 读取 Excel 表格数据* @author Ghost* @version 1.0*/
public class ImportExcelData {public static void main(String[] args) {// 写法 1String fileName = "D:\\code\\user-center\\src\\main\\resources\\testUser.xls";// 先写一个绝对路径// 这里默认每次会读取100条数据 然后返回过来 直接调用使用数据就行EasyExcel.read(fileName, TableUserData.class, new DemoDataListener()).sheet().doRead();}}

5. 运行程序,查看效果

方式二:使用同步读方式

1. 导入 EasyExcel 的依赖(同方式一)

2. 创建读对象(同方式一)

3. 读取数据:使用同步读的方式

  • 无需创建监听器,一次性获取完整数据
  • 方便简单,但数据量大时需要等待,会卡顿
package com.example.usercenter.once;import com.alibaba.excel.EasyExcel;
import lombok.extern.slf4j.Slf4j;import java.util.List;/*** 读取 Excel 表格数据* @author Ghost* @version 1.0*/
@Slf4j
public class ImportExcelData {public static void main(String[] args) {// 写法 1String fileName = "D:\\code\\user-center\\src\\main\\resources\\testUser.xls";// 先写一个绝对路径
//        readByListener(fileName);synchronousRead(fileName);}/*** 读取方式一:使用监听器读取* @param fileName 文件路径*/public static void readByListener(String fileName) {// 这里默认每次会读取100条数据 然后返回过来 直接调用使用数据就行EasyExcel.read(fileName, TableUserData.class, new DemoDataListener()).sheet().doRead();}/*** 读取方式二:同步读取(同步的返回,不推荐使用,如果数据量大会把数据放到内存里面)* @param fileName 文件路径*/public static void synchronousRead(String fileName) {// 这里 需要指定读用哪个class去读,然后读取第一个sheet 同步读取会自动finishList<TableUserData> list = EasyExcel.read(fileName).head(TableUserData.class).sheet().doReadSync();for (TableUserData data : list) {log.info("读取到数据:{}", data);}}}

4. 运行程序,查看效果

三、清洗数据后导入数据库

1. 使用同步读的方式获取数据

2. 数据去重:判断是否有用户名相同的用户

3. TODO:如何获取所有用户(用户的唯一标识)

http://www.hengruixuexiao.com/news/20687.html

相关文章:

  • 集团网站建设思路产品经理培训哪个机构好
  • 鲜花网站建设企划书互联网推广引流是做什么的
  • 在国外做盗版电影网站吗营销策划方案案例范文
  • 苏州市建设工程建设中心网站广告设计自学教程
  • 易语言可以做网站互动营销名词解释
  • 网站设计和建设ppt手机创建网站教程
  • 建了一个网站 如何找到放图片的文件夹国外seo比较好的博客网站
  • 怎么做免费的产品网站搜索引擎排名大全
  • 计算机网站建设的能力营销网络推广方式有哪些
  • wordpress主题官网杭州seo俱乐部
  • 怎么看网站做没做seo直播营销
  • 公司和网站备案查询密码关键词上首页软件
  • 怎么样模仿一个网站做简历网站建设优化的技巧
  • 做体彩网站怎么做百度快照怎么发布
  • 网站项目有需要什么技术支持怎么样把广告做在百度上
  • 新密做网站网络推广优化招聘
  • 聊城企业做网站推广精准引流推广
  • 在线网站制作2023年7月最新新闻摘抄
  • 淘宝客如何做自己的网站杭州网站建设方案优化
  • 2018年靖边建设项目招投标网站百度指数人群画像
  • 涿州市建委网站推广员网站
  • wordpress获取本篇文章tag网络推广优化
  • 网站建立好了自己怎么做优化在线发外链工具
  • 怎么做病毒视频网站免费做网站怎么做网站链接
  • a站怎么进深圳网站seo哪家快
  • 自己做传奇sf网站长春seo外包
  • 电商数据网站服务营销7p理论
  • 怎么用WordPress快速建站网络推广与营销
  • 做商品网站数据库有哪些哈尔滨网站制作软件
  • 沈阳做网站的公司seo排名点击软件