# BugDailyMail **Repository Path**: leixun/BugDailyMail ## Basic Information - **Project Name**: BugDailyMail - **Description**: No description available - **Primary Language**: Python - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2019-05-23 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README > 本文构建了一个定时爬取公司后台用户反馈的爬虫 # 应用场景 人都是有惰性的,主动登录用户反馈后台去查看用户问题并去解决,比较麻烦,很容易忽略这份工作。每天以邮件的形式发送到相应开发人员及管理人员邮箱,则便于知晓、处理及解决用户问题。 # 用户反馈爬虫脚本爬取步骤 ##### 1、登录 通过分析代理找到登录时的表单请求  python请求代码如下: ``` yield scrapy.FormRequest.from_response( response, formdata={ "username": ####, "password": ####, "It": "_c35F4FAF6-1632-57F1-D4E1-6E434CA73FBA_k8014A5B9-4C6B-693B-7E34-D16ECCBA8C65", "_eventId": "submit", "submit": "登录" }, callback=self.jumpToBugPage) ``` ##### 2、请求bug列表 结合网页开发工具和代理可以发现,bug列表显示的是一个http请求直接返回的table元素。如下图:  参数配置如下: ``` // 具体格式可以查看源码及代理工具查看 bugParam = { "page":"1", "pageSize":"80", "appId":"", "appName":"", "userName":"", "content":"", "platform":"1", "replyStatus":"-1", "startTime":"", "endTime":"" } ``` ##### 3、网页模板构建 为了便于每天接受到的邮件查看,咱们可以直接将这个表格展示到邮箱,因此可以采用直接发送html的方式发送到邮箱。 由于直接返回的table元素使用了大量的css样式,因此需要将其css样式拷贝出来放到html模板中,且对表格宽高做单独限制,否则显示会很奇怪。 模板如下 ```