微博高级搜索

可能你经常有这样的需要,比如最近有热度的事件兴起,你要抓取几月几号到几月几号这段时间,提及到某个关键词的微博。

这其实是一个非常刚性的需求,这就要采用微博的高级搜索来完成了。

本文采用 微博站点

高级搜索接口:

https://weibo.cn/search/mblog?advanced=mblog&f=s

注意这里的时间是以天为单位,如果输入关键词“高考”,试着分别输入20190601至20190602、20190601至20190620,结果返回的都是100页,每页10个,也就是1000条结果。如果想爬取更丰富的数据,肯定是要构造每一个相差一天,一直到截止日期的url集合

import scrapy

from scrapy import Request

from ..items import *

import datetime

import re

class WeiboSpiderSpider(scrapy.Spider):

name = 'weibo_spider'

allowed_domains = ['weibo.cn']

# start_urls = ['http://weibo.cn/']

base_url = "https://weibo.cn"

def start_requests(self):

url_format = "https://weibo.cn/search/mblog?hideSearchFrame=&keyword={}&advancedfilter=1&starttime={}&endtime={}&sort=time"

# 搜索的关键词,可以修改

# keyword = "阴阳师"

keyword = "高考"

# 搜索的起始日期,自行修改 微博的创建日期是2009-08-16 也就是说不要采用这个日期更前面的日期了

date_start = datetime.datetime.strptime("2019-05-20", '%Y-%m-%d')

# 搜索的结束日期,自行修改

date_end = datetime.datetime.strptime("2019-06-20", '%Y-%m-%d')

time_spread = datetime.timedelta(days=1)

while date_start < date_end:

next_time = date_start + time_spread

url = url_format.format(keyword, date_start.strftime("%Y%m%d"), next_time.strftime("%Y%m%d"))

date_start = next_time

yield Request(url, callback=self.parse_tweet, dont_filter=True)

例如这样我们爬取 2019-05-20 至 2019-06-20 这一个月关键词“高考”的微博,构造url,从起始日期每天+1天,一天是10*100=1000条结果,一共是这一个月之间的天数*1000条结果。

然后就可以爬取微博数据和发该微博的用户信息。

小白的学习笔记...

emmmm...

后来,抓取了近3个月,关键词为“阴阳师”的微博近80000条,用户50000多个,男女比例1.8:1

根据微博内容生成词云 (词云的Github源码:Ingram7/Mywordcloud)

scrapy 搜索关键字_Scrapy 新浪微博搜索爬虫相关推荐

  1. django搜索 关键字 全文检索haystack 搜索分词数据库

    Django Haystack 简介 django-haystack 是一个专门提供搜索功能的 django 第三方应用,它支持 Solr.Elasticsearch.Whoosh.Xapian 等多 ...

  2. php 搜索关键字,PHP获取搜索关键字有关问题_PHP教程

    PHP获取搜索关键字问题 网上找了一段代码想实现获取搜索关健字,测试了一个关健字取不了,是不是这代码无效了,还是那里有BUG? //取搜索来源关健字 function get_keyword($url ...

  3. linux下全盘搜索关键字,Linux 全盘搜索关键字

    redis系列-主从复制 redis自身提供了主从的机制,通过配置可以实现服务的备份(Master->Slave). 配置项 slaveof mas ... DedeCMS Xss+Csrf G ...

  4. 编写文件搜索小程序:1. 输入绝对路径以及搜索关键字,2. 搜索指定路径下(包括子文件夹)中名称包含关键字的所有文件并打印出,3. 将当前操作记录日志

    package com.homework;import java.io.File; import java.io.FileOutputStream; import java.io.IOExceptio ...

  5. js搜索关键字,并高亮显示

    当我们搜索时,总想要自己输入的字体显示为重点,今天我为大家解决这个问题 <!DOCTYPE html> <html lang="en"><head&g ...

  6. angular+TS实现搜索关键字高亮

    前端实现基于后端返回的文档内容关键字搜索高亮 需求背景及技术实现 针对上传的word文档实现关键字搜索高亮 且需要通过向上向下查找按钮实现当前关键字位置高亮颜色不一样 后端返回文档的html内容 前端 ...

  7. 【爬虫初探】新浪微博搜索爬虫实现

    全文概述 功能:爬取新浪微博的搜索结果,支持高级搜索中对搜索时间的限定 网址:http://s.weibo.com/ 实现:采取selenium测试工具,模拟微博登录,结合PhantomJS/Fire ...

  8. 【爬虫初探】新浪微博搜索爬虫总览

    不知在那个群里面看到的消息:请问如何抓取近几个月来大蒜的价格? Oh!My!God!卖大蒜的农夫现在都需要用到数据抓取.数据分析来制定销售策略销售计划等等,IT行业的程序员们以及我们这种类似IT行业的 ...

  9. 提交关键字到必应搜索,将首页相关url写入excel

    已有excel表格,表格含有一列待搜索关键字,如下: 查阅得知使用xlwt.xlrd两个python库分别完成xls文件的写入和读出. 首先读出该表格对应那列关键字,编码方式使用utf-8,防止乱码, ...

最新文章

  1. Provisioning Services 7.8 入门系列教程之十三 使用 Boot Device Management(BDM)
  2. his系统oracle多少钱,医院信息系统怎样为医改调价做准备:HIS费用功能应用情况调查告诉您...
  3. idea不自动检查语法_idea自动检查失效-目录中类名下的红色波浪线没有自动消除问题...
  4. .Net面试题(3)
  5. 启动时指定需要绑定的网卡_为什么小型汽油机在启动时需要拉风门,而汽车却不用?...
  6. python绘制不带颜色曲线图_Python画曲线图
  7. java移动元素_如何通过箭头键连续/平滑地移动元素?
  8. 关于字符串匹配算法研究
  9. java实现rabbitmq动态路由/话题模型(topic queues), 生产者 消费者 交换机 消息队列
  10. luogu1850 [NOIp2016]换教室 (floyd+dp)
  11. react 结合 axios 异步请求封装
  12. 智慧体检中心管理系统方案/APP/小程序/公众号/网站
  13. 新浪微博开放平台API访问频率限制解决方法
  14. ASP.NET 新闻发布网站
  15. 第2期:网页动画制作(CSS+JS)
  16. HDFS的设计目标是什么?
  17. 绿色商业包装材料在行业中的重要地位
  18. 2021年新媒体运营不可缺少的24大类工具!
  19. 设置屏幕色调、饱和度、亮度来保护眼睛
  20. 5G技术可能使大量基于SIM卡的IoT设备处于威胁中

热门文章

  1. 图像处理中的傅里叶变换和频率域滤波概念
  2. Android—打包aar以及module依赖操作
  3. pytorch list转tensor_PyTorch 52.PyTorch常用代码段合集
  4. 文件包含——远程包含shell(三)
  5. QQProtect.exe(Q盾)
  6. git回滚到某一个commit
  7. web flash rtmp_基于RTMP和WebRTC开发大规模低延迟(1000毫秒内)直播系统
  8. java处理图像库函数_图象处理详解-Java架构师必看
  9. 计算机设备的热量,帮我计算机一下这块冰能吸收多少热量?
  10. idea从安装到项目启动