分享好友 最新动态首页 最新动态分类 切换频道
scrapy爬取微信公众号内容,多管道储存,orm数据储存
2024-12-18 19:08
  • 基本介绍:基于异步爬虫的框架。高性能的数据解析,高性能的持久化存储,全站数据爬取,增量式,分布式…
  • 环境的安装

- Linux

scrapy爬取微信公众号内容,多管道储存,orm数据储存

 

- Windows

 
  • scrapy基本使用
    • 工程的目录结构

      • spiders文件夹: 这里存放爬虫的主程序,这里可以写多个爬虫文件,分别执行不同的爬虫功能。
        • 要求:必须要存储一个或者多页爬虫文件
      • items.py: 这个文件定义了爬虫程序中爬取的字段信息,对应着数据库中的属性信息。
      • middlewares.py: 下载中间件,可以对爬取到的网页信息尽心特定的处理。
      • pipelines.py: 管道,也就是将返回来的item字段信息写入到数据库,这里可以写写入数据库的代码。
      • settings.py: 配置文件。
    • 2.创建爬虫文件

      • cd proName
      • scrapy genspider spiderName www.xxx.com
    • 3.执行工程

      • scrapy crawl spiderName
      • 重点关注的日志信息:ERROR类型的日志信息
        • settings.py:LOG_LEVEL = ‘ERROR’
        • settings.py:不遵从robots协议
        • settings.py:
        • UA伪装:USER_AGENT = ‘Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36’

settings.py代码参考以及配置意思的含义:

 
数据解析
 
 
 

打开spiders文件夹下爬虫文件
wechat/wechat/spiders/wechatspider.py

代码如下:

 
持久化存储
 
  • 基于终端指令的持久化存储
    cd 项目文件下
    用命令把爬取课程名和url地址存在本地
 
 
  • 基于管道的持久化存储
    1.spider文件下得爬虫文件wechatspider.py
 

2.items.py代码

 

3.去settings里开启管道配置。

 
 
 

4.1 封装管道类,把数据储存到mysql里 ; pipelines.py代码:
,我比较懒,不喜写SQL语句,用sqlalchemy来处理的。

mysql 创建库:

create database wechat charset utf8mb4;

cd spiderst同级目录下
mkdir docs
新建models.py:

 

执行命令:

alembic init migrations

修改alembic.ini、enc.py代码 ,参考:https://blog.csdn.net/yutu75/article/details/117362459
也可以自行百度如何迁移

alembic revision --autogenerate -m “v1”

alembic upgrade head

修改pipelines.py,代码:
下面封装了三个管道类

txt文件,mysql,Redis

 

执行命令 :

scrapy crwal wechatspider

储存后txt

持久化储存的知识点总结
 
redis的基础使用
 
全站数据爬取
最新文章
分析大型门户网站截取热门流量的SEO策略
一说到热门流量这个词,我想大家都会很快的想到利用热门话题或者热门事件来获取短期的高流量,在SEO里这种方式一般被称为截取流量,也就是利用SEO的方式来在短期内获得热门关键词的较好排名,从而获取短期的热门流量。比如网络上经常会出现
115网盘提取码怎么用 115网盘提取码下载的方式应用攻略
通过115提取码下载的方式有很多,首先115网盘自身就提供了专门的下载器优蛋。安装优蛋以后,点击文件页面的优蛋下载选框,就会直接弹出优蛋下载器,直接进行下载。或者在优蛋新建下载,直接输入提取码或文件页面网址,也可进行下载。步骤 1
佛山SEO排名应该怎么做?(SEO排名的10个有效方法)
佛山SEO排名应该怎么做?(SEO排名的10个有效方法)排名佛山SEO排名应该怎么做?(SEO排名的10个有效方法) 一、SEO排名应该怎么做?SEO排名的10个有效方法1、在进行SEO排名优化时,关键词研究是至关重要的第一步。通过使用关键词研究工具
PHP在线客服系统平台源码(完全开源的网页在线客服系统)
大家好,又见面了,我是你们的朋友全栈君。  在线客服系统是一个使用PHP、JavaScript和CSS开发的即时网页聊天咨询系统。该项目包含管理员和用户端。管理员端管理所有的管理,如编辑站点内容、管理提供者和预订,管理员在这个系统的管理中
刷360网站快速排名,策略与实践,360seo刷网站关键字排名优化官网
在当今的互联网时代,网站的可见度直接影响着其流量和商业价值,而在众多的搜索引擎中,360搜索作为国内主流的搜索引擎之一,其排名机制自然成为了许多网站管理员关注的焦点,本文将深入探讨如何通过刷360网站快速排名来提升网站的曝光度和
友点 CMS V9.1 后台登录绕过 GetShell
友点CMS9.1是一款国内常用的开源CMS系统,近日被指出存在一个getshell漏洞,该漏洞可允许攻击者通过构造特殊的请求参数向网站注入任意代码,并获取服务器的控制权。经分析,该漏洞影响范围较广,可影响友点CMS9.1及其以下版本。攻击者通过
关键词优化攻略,全方位策略助力企业业绩飙升
本指南深入解析了选择和优化推广关键词的策略,通过精准定位目标受众,提升广告效果。涵盖关键词研究、分析、筛选与持续优化,助力企业实现业绩显著增长。随着互联网的飞速发展,线上推广已经成为企业拓展市场、提升品牌知名度的重要手段,
如何让你的品牌在搜索引擎上闪耀?
如何让你的品牌在搜索引擎上闪耀?在数字化时代,品牌的在线存在感越来越重要,而搜索引擎优化(SEO)是提升品牌在搜索引擎上曝光度的关键。无论是增加网站流量、提高转化率,还是提升品牌声誉,SEO的作用都不可忽视。本文将从关键词优化、
CentOS 7 使用 docker 安装 typecho 博客系统
我的博客 https://savokiss.com 用的是 typecho,一直使用的是 阿里云ECS 直接安装的 MySQL 和 PHP,由于买的时间比较早,当时用的是 CentOS 6.5。后来想玩 docker,发现 docker 只支持 CentOS 7+,加
【魅影T800百度网盘下载】MOPS 魅影T800百度网盘12.18.3免费下载
百度网盘是一款省心、好用的超级云存储产品,已为超过7亿用户提供云服务,空间超大,支持多类型文件的备份、分享、查看和处理,自建多个数据存储中心,更有两项国际安全认证ISO27001&ISO27018为用户数据安全提供护航,如果您想备份文件数
相关文章
推荐文章
发表评论
0评