【Python】抓取淘宝数据库月报,发送邮件,本地存档,保存元信息

用途

  • 定期抓取淘宝数据库月报
  • 发送邮件,保存到本地,最好是git中
  • 发送元数据到mysql中,后期可以做成接口集成到运维平台中,便于查询

使用方式

# 下载(必须)
cd ~ && git clone https://github.com/naughtyGitCat/spider_taobao_mysql.git

# 修改配置(必须)
vim config.py

# 安装crontab(可选)
"0 10 8 * * source ~/.bashrc && python3 ~/spider_taobao_mysql/main.py" 

# 安装依赖
pip3 install logbook
pip3 install html2text
pip3 install pymysql
pip3 install requests_html

# 创建元信息库表(可选)
mysql -d mysql -u root -p < taobao_monthly_report.sql 

# 执行程序
python3 main.py

完成情况:

  • 定期抓取用crontab来做,不放到本脚本中
  • 发送邮件,保存到本地(html)皆完成
  • 保存元数据

问题

  • 为什么邮件正文只有前言部分?因为邮件有反垃圾措施,全文容易被屏蔽
  • 为什么收件人只有一个?因为邮件有反垃圾措施,多人容易被屏蔽,可以发送到同一个邮箱中,然后自动转发
  • 可以也可以保存md格式到本地,但是我的md编辑器好像加载不了图片,就是用了html的格式本地保存
  • 本地保存以及发送html时都损失了样式,不太美观,但我在邮件正文中增加了原文链接。
  • 文章中的图片没有本地化,理论上是有图片失效的问题的。但考虑到各位都有阅读后及时总结整理的好习惯,也就无所谓了。

注意

  • 一个月运行一次就够了,可以放到crontab中每月执行一次,自动抓取上个月的文章内容
  • 阿里的页面是到下个月后一次性放出上个月所有的文章,总数目前看基本是10篇,
  • 如果发现其一次放出了>10篇的文章,请联系我进行更改

依赖包

  • logbook 日志
  • html2text 格式转换为md
  • pymysql 上传元数据
  • requests_html 抓取网页的正文

TODO:

  • 缓存本地图片
  • 把insert into 改成replace into

原文地址:http://blog.51cto.com/l0vesql/2299836

时间: 2024-12-06 09:30:59

【Python】抓取淘宝数据库月报,发送邮件,本地存档,保存元信息的相关文章

Python爬虫实战四之抓取淘宝MM照片

福利啊福利,本次为大家带来的项目是抓取淘宝MM照片并保存起来,大家有没有很激动呢? 最新动态 更新时间:2015/8/2 最近好多读者反映代码已经不能用了,原因是淘宝索引页的MM链接改了.网站改版了,URL的索引已经和之前的不一样了,之前可以直接跳转到每个MM的个性域名,现在中间加了一个跳转页,本以为可以通过这个页面然后跳转到原来的个性域名,而经过一番折腾发现,这个跳转页中的内容是JS动态生成的,所以不能用Urllib库来直接抓取了,本篇就只提供学习思路,代码不能继续用了. 之后博主会利用其它方

芝麻HTTP:Python爬虫实战之抓取淘宝MM照片

本篇目标 1.抓取淘宝MM的姓名,头像,年龄 2.抓取每一个MM的资料简介以及写真图片 3.把每一个MM的写真图片按照文件夹保存到本地 4.熟悉文件保存的过程 1.URL的格式 在这里我们用到的URL是 http://mm.taobao.com/json/request_top_list.htm?page=1,问号前面是基地址,后面的参数page是代表第几页,可以随意更换地址.点击开之后,会发现有一些淘宝MM的简介,并附有超链接链接到个人详情页面. 我们需要抓取本页面的头像地址,MM姓名,MM年

使用selenium模拟浏览器抓取淘宝信息

通过Selenium模拟浏览器抓取淘宝商品美食信息,并存储到MongoDB数据库中. from selenium import webdriver from selenium.common.exceptions import TimeoutException from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait from selenium.webdri

selenium抓取淘宝数据报错:warnings.warn(&#39;Selenium support for PhantomJS has been deprecated, please use headless

ssh://[email protected]:22/root/anaconda3/bin/python3 -u /www/python3/maoyantop100/meishi_selenium.py /root/anaconda3/lib/python3.6/site-packages/selenium/webdriver/phantomjs/webdriver.py:49: UserWarning: Selenium support for PhantomJS has been depre

前端 抓取淘宝的产品 上架到拼多多

这里只是简单实现,因为时间比较急. 主要解决的问题是,淘宝的那款产品分类很多,拼多多一个一个添加分类太累了,受不了. 还有就是拼多多要求每个分类都必须有图片,这也是坑的一笔. 主要是js实现 抓取淘宝的分类 得到淘宝的分类数组: var arr = []; $("ul.J_TSaleProp li a span").each(function (index) { var item = $("ul.J_TSaleProp li a span")[index]; var

python爬取ajax动态生成的数据 以抓取淘宝评论为例子

在学习python的时候,一定会遇到网站内容是通过ajax动态请求.异步刷新生成的json数据的情况,并且通过python使用之前爬取静态网页内容的方式是不可以实现的,所以这篇文章将要讲述如果在python中爬取ajax动态生成的数据. 至于读取静态网页内容的方式,有兴趣的可以查看博客内容. 这里我们以爬取淘宝评论为例子讲解一下如何去做到的. 这里主要分为了四步: 一 获取淘宝评论时,ajax请求链接(url) 二 获取该ajax请求返回的json数据 三 使用python解析json数据 四

selenium抓取淘宝商品

我们知道,javascript动态渲染页面不止ajax这一种,有些网站可能整个都是由javascript渲染后生成的,还有些网站,比如淘宝,它虽然有ajax请求,但其中加入了很多复杂的参数,需要耗费大量时间才能找出规律,这时候,我们就可以用selenium,它可以直接模仿浏览器运行,并且抓取在运行时的源码,不用管ajax那些复杂的数,此次我们使用一种无界面的浏览器PhantomJS,它可以做到不用打开浏览器就可以运行,另外,需要正确安装好Selenium库. #我们需要用到MongoDB数据库,

用PHP抓取淘宝商品的用户晒单评论+图片实例

为什么想起来做这个功能?是因为前段时间在做一个淘客网站的时候,想到是否能抓取到淘宝商品的买家秀呢?经过一番折腾发现,淘宝商品用户评价信息是通过Ajax来调取的,通过嗅探网址发现,评论数据的请求接口是: https://rate.tmall.com/list_detail_rate.htm?itemId=524394294771&spuId=341564036&sellerId=100414600&order=3&currentPage=1&append=0&

selenium+chrome抓取淘宝宝贝-崔庆才思路

站点分析 源码及遇到的问题 在搜索时,会跳转到登录界面 step1:干起来! 先取cookie step2:载入cookie step3:放飞自我 关于phantomJS浏览器的问题 源码 站点分析 看了交互,好复杂 看了下Ajax,好复杂 看了下其他内容,看不懂... 所以,没啥好分析的,直接上selenium吧 源码及遇到的问题 在搜索时,会跳转到登录界面 这个没有办法,是淘宝的反爬虫机制. 因为通过selenium webdriver调用的浏览器会有很多异于正常浏览器的参数,具体生成了啥参