python3 爬虫实战之爬取网易新闻APP端

2023-10-30

(一)使用工具

这里使用了火狐浏览器的user-agent插件,不懂的可以点这里火狐插件使用

image.png

(二)爬虫操作步骤:

百度 网易新闻并选择

步骤一:

image.png

步骤二:

image.png

步骤三:

image.png

步骤四:

image.png

最后一步:

image.png

注意点:

(1)网易新闻类型,一共是下面的几种:

{"BBM54PGAwangning","BCR1UC1Qwangning","BD29LPUBwangning","BD29MJTVwangning","C275ML7Gwangning"}

(2)新闻翻页动作:
从0-10 ——> 10-10
步数为10,0起步

我们试着从0页开始获取一下(浏览器输入一下):

http://3g.163.com/touch/reconstruct/article/list/BD29LPUBwangning/0-10.html

image.png

很好的json,有没有。下面开始coding,不多说,直接看代码。

(三) 代码编写部分:

使用环境:win10 python3 scrapy

这里给出了spider文件部分

# -*- coding: utf-8 -*-
# @Time    : 2018/5/23 13:56
# @Author  : 蛇崽
# @Email   : 643435675@QQ.com
# @File    : wangyi3g.py
import json

import re
import scrapy
from bs4 import BeautifulSoup


class Wangyi3GSpider(scrapy.Spider):

    name = 'wangyi3g'
    allowed_domains = ['3g.163.com']
    start_urls = ['http://3g.163.com/touch/news/']

    baseurl = 'http://3g.163.com/touch/reconstruct/article/list/BD29LPUBwangning/{}-10.html'
    def parse(self, response):
        # 10 20
        for page in range(0,80,10):
            jsonurl = self.baseurl.format(page)
            yield scrapy.Request(jsonurl,callback=self.parse_li_json)

    def parse_li_json(self,response):
        res = response.body.decode('utf-8')
        print(res)
        res = str(res).replace('artiList(','')
        res = res.replace(')','')
        j = json.loads(res)
        datas = j['BD29LPUBwangning']
        print(datas)

        for data in datas:
            title = data['title']
            ptime = data['ptime']
            url = data['url']
            source = data['source']
            print(title,ptime,url,source)
            if url:
                yield scrapy.Request(url,callback=self.parse_detail)

    def parse_detail(self,response):
        soup = BeautifulSoup(response.body,'lxml')
        content = soup.find('div','content')
        image_urls = re.findall(r'data-src="(.*?)"', str(content))
        # print(image_urls)

image.png

以上就是网易新闻APP爬虫代码的实现,更多技术学习交流可查看主页加群。我们一起学习。

更多博客文章请访问:

https://blog.csdn.net/xudailong_blog/article/details/78762262

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python3 爬虫实战之爬取网易新闻APP端 的相关文章

  • Spring的@Component 、@Value 和 Springboot 的 @Component 、@ConfigurationProperties 使用

    application yml配置 book name 一个人的朝圣 author 蕾秋 乔伊斯 age 35 Spring的 Value 程序代码里 Spring主要在 Value注解的参数中使用EL表达式 注入普通字符串 注入操作系统属
  • C++异常处理机制的详细介绍

    1 C 异常处理的套路 1 1 C 异常处理机制之抛出异常关键字 throw 1 2throw关键字的使用 在哪可能出现异常就在哪里使用throw关键字抛出异常 这个异常可以使用一个常量 字符串 或类对象 都可以来抛出 throw 常量 字
  • 最佳买卖股票时机含冷冻期

    题目 给定一个整数数组 其中第 i 个元素代表了第 i 天的股票价格 设计一个算法计算出最大利润 在满足以下约束条件下 你可以尽可能地完成更多的交易 多次买卖一支股票 你不能同时参与多笔交易 你必须在再次购买前出售掉之前的股票 卖出股票后
  • 手游SDK-悬浮球

    一 游戏内显示悬浮球 手游SDK的悬浮球和一般的悬浮窗有点不一样 它只需要在游戏内显示即可 不需要也不能在桌面中显示出来 所以如果使用WindowManager创建悬浮窗 需要监听App是否在前台 如果在 则显示 如果不在则隐藏悬浮窗 而A
  • yolov7 姿态 pose训练部署笔记

    目录 pytorch开源相关资料 有tensorrtc 代码 预测时间测试结果 导出onnx代码

随机推荐

  • oppor15android版本8.1,OPPO R15搭载最新ColorOS 5.0系统,基于安卓8.1更好用

    原标题 OPPO R15搭载最新ColorOS 5 0系统 基于安卓8 1更好用 手机的发展十分之快 硬件性能普遍过剩 而手机系统的更新迭代变得异常重要 而越来越多的消费者也意识到这个问题 想获得更好的使用体验 不仅仅是硬件上的支持 操作系
  • Unity学习日志_动画系统简介

    Unity学习日志 动画系统简介 Animation Legacy动画系统 若要使用Animation 需要在创建Clip之前为物体手动添加Animation组件 Animation组件面板 属性 Animation 动画片段 Animat
  • Linux安装cuda如何修改目录,Ubuntu 18.04下安装CUDA 9.1或者9.2详细步骤

    在Ubuntu 18 04操作系统下安装CUDA 9 1 9 1 85 或者CUDA 9 2 9 2 148 版本的详细步骤 本文以安装CUDA 9 1为例 如果是安装CUDA 9 2 则相关参数修改为CUDA 9 2匹配的即可 1 下载c
  • vue项目运行至ipad白屏问题

    Vue做了一个单页面应用 它在一切设备上都工作正常 在调试另一个dug时 发现了这个问题 项目在其他端都可以正常打开 只有在paid上打开时 显示的是白屏状态 在刚开始解决这个问题时 花费了好几个小时都没解决 都准备从新编译代码了 发现并没
  • 数学建模学习笔记——线性规划

    数学建模学习笔记 线性规划 一 基础知识储备 1 线性规划 1 1标准形式 1 2非标准形式 1 3多目标规划 2 运输问题 3 指派问题 4 对偶理论与灵敏度分析 二 章节习题解答 Q3 Q4 Q5 Q6 Q8 Q9 本文章为 数学建模算
  • Unity 3D 博客汇总

    附录 X4 作业优秀博客汇总 目录 文章目录 附录 X4 作业优秀博客汇总 1 最有价值个人博客 Valuable Person Blogs 2 博客表达技巧与游戏创新 2 1 写读者欢迎的游戏博客 2 2 师兄师姐谈游戏创新 竞赛经验谈
  • Vector、deque、list三者之间的区别!!!

    vector 是一段连续的内存块 而deque 是多个连续的内存块 list 是所有 数据元素分开保存 可以是任何两个元素没有连续 vector 的查询性能最好 并且在末端增加数据也很好 除非它重新申请内存段 适合高效地随机存储 list
  • Java问题诊断和排查工具(查看JVM参数、内存使用情况及分析等)

    JDK自带的工具 在JDK的bin目录下有很多命令行工具 我们可以看到各个工具的大小基本上都稳定在27kb左右 这个不是JDK开发团队刻意为之的 而是因为这些工具大多数是jdk lib tools jar类库的一层薄包装而已 他们的主要功能
  • Windows批处理(cmd/bat)快速新建文件夹

    Windows批处理 cmd bat 快速新建文件夹 在进行毕业设计时 随着每日的任务不同 需要新建不同文件夹来区分任务 但手敲新建重命名太过繁琐 经过资料的查找 找到了在windows系统下bat文件的快速新建文件夹的方法 效果展示如下
  • 怎么让一个APP没有桌面图标!

    直入正题 在AndroidManifest xml中 注意 包含 action android name android intent action MAIN 的activity必须是application标签中第一个activity
  • C语言中将数字转换为字符串的方法

    C语言提供了几个标准库函数 可以将任意类型 整型 长整型 浮点型等 的数字转换为字符串 以下是用itoa 函数将整数转换为字符串的一个例子 include
  • 若依框架加入element-ui的input输入框,远程搜索用后端数据的,简单易上手

    我先展示一个最终效果 两种 设备信息用的是 el select gt 设备借还记录用的是el autocomplete gt 用的若依框架 做一个element ui的input输入框 远程搜索用后端数据的 我先说一下 我是三个表 一个厂家
  • 虚继承详解及其内存分布

    什么是虚继承 根据百度百科 虚继承 是面向对象编程中的一种技术 是指一个指定的基类 在继承体系结构中 将其成员数据实例共享给也从这个基类型直接或间接派生的其它类 虚拟继承是多重继承中特有的概念 虚拟基类是为解决多重继承而出现的 如上图 假设
  • 学习笔记 JavaScript ES6 Set

    学习内容 常用方法 遍历 应用场景 WeakSet 一种新的数据结构 set和array数组很像 不过array中可以有重复的值 而set里的值是唯一的 let s new Set console log s let s1 new Set
  • 【PCL-8】方向包围盒OBB

    AABB包围盒 边平行于坐标轴的最小六面体 方向包围盒OBB 相对于坐标轴方向任意的最小立方体 最小包围盒计算流程 1 利用PCA主元分析法获得点云的三个主方向 获取质心 计算协方差 得到协方差矩阵 求取协方差矩阵的特征值和特征向量 特征向
  • 【time series】时间序列领域的Transformer综述论文笔记

    论文名称 Transformers in Time Series A Survey 论文年份 2022 5 7 论文作者 阿里巴巴达摩院 论文下载 https arxiv org abs 2202 07125 论文源码 https gith
  • 零基础CSS入门教程(8)——CSS设置字体

    本章目录 1 任务目标 2 css设置字体 3 代码演示 4 小结 1 任务目标 我们前几个小结学习了 css的选择器 和及基本的改变字体颜色 我们这一小结学习一下设置字体的一些功能 2 css设置字体 1 font size这个是设置字体
  • Link Cut Tree (动态树)【P3690】

    题目链接 给定n个点以及每个点的权值 要你处理接下来的m个操作 操作有4种 操作从0到3编号 点从1到n编号 0 后接两个整数 x y 代表询问从x到y的路径上的点的权值的xor和 保证x到y是联通的 1 后接两个整数 x y 代表连接x到
  • springboot websocket 传递 头信息 协议头 token 的前后端解决方案

    文章目录 一 前言 二 js websocket 传递token 2 1 基于协议头 三 后台取出websocket协议头的参数 3 1 取出token 3 2 注意大坑 四 结尾 一 前言 关于springboot websocket 可
  • python3 爬虫实战之爬取网易新闻APP端

    一 使用工具 这里使用了火狐浏览器的user agent插件 不懂的可以点这里火狐插件使用 二 爬虫操作步骤 百度 网易新闻并选择 步骤一 步骤二 步骤三 步骤四 最后一步 注意点 1 网易新闻类型 一共是下面的几种 BBM54PGAwan