#微信爬虫  自动获取微信相关文章信息的一种爬虫。伪装浏览器,使用代理ip
import urllib.request
import urllib.error
import time
import re

def use_proxy(url,proxy_addr):
    try:
        req = urllib.request.Request(url)
        req.add_header('User-Agent','Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.132 Safari/537.36')
        proxy = urllib.request.ProxyHandler({'http':proxy_addr})
        opener = urllib.request.build_opener(proxy,urllib.request.HTTPHandler)
        urllib.request.install_opener(opener)
        data = urllib.request.urlopen(req).read().decode('utf-8','ignore')
        return data
    except urllib.error.URLError as e:
        if hasattr(e,'code'):
            print(e.code)
        if hasattr(e,'reason'):
            print(e.reason)
        time.sleep(5)
    except Exception as e:
        print('exception:'+str(e))
        time.sleep(1)

key = "python"
proxy = "58.244.59.185:8080"  #代理服务器地址

for i in range(0,10):
    key = urllib.request.quote(key)
    thispageurl = "https://weixin.sogou.com/weixin?query="+key+"&_sug_type_=&sut=1044&lkt=7%2C1567498024564%2C1567498025603&s_from=input&_sug_=y&type=2&sst0=1567498025704&page="+str(i)+"&ie=utf8&w=01019900&dr=1"
    print(thispageurl)
    thispagedata = use_proxy(thispageurl,proxy)
    print(len(str(thispagedata)))

pat1 = 'data-share="(.*?)"'
    rs1 = re.compile(pat1,re.S).findall(str(thispagedata))
    if(len(rs1) == 0):
        print("此次"+str(i)+"页没成功")
        continue
    for j in range(0,len(rs1)):
        thisurl = rs1[j]
        thisurl = thisurl.replace('amp;','')
        file = "d:/25/"+str(i)+"页第"+str(j)+"篇文章.html"
        thisdata = use_proxy(thisurl,proxy)
    try:
        fh = open(file,'wb')
        fh.write(thisdata)
        fh.close()
        print("第"+str(i)+"页第"+str(j)+"篇文章成功")
    except Exception as e:
        print(e)
        print("第"+str(i)+"页第"+str(j)+"篇文章失败")

网络爬虫---微信爬虫相关推荐

  1. 爬虫的基本原理:网络爬虫、爬虫基本流程、解析方式、保存数据

    爬虫的基本原理:网络爬虫.爬虫基本流程.解析方式 网络爬虫(Web crawler),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本,它们被广泛用于互联网搜索引擎或其他类似网站,可以自动采集 ...

  2. python爬虫微信_搜狗微信采集 —— python爬虫系列一

    前言:一觉睡醒,发现原有的搜狗微信爬虫失效了,网上查找一翻发现10月29日搜狗微信改版了,无法通过搜索公众号名字获取对应文章了,不过通过搜索主题获取对应文章还是可以的,问题不大,开搞! 目的:获取搜狗 ...

  3. python网页爬虫漫画案例_python实现网络段子页爬虫案例

    网上的Python教程大都是2.X版本的,python2.X和python3.X相比较改动比较大,好多库的用法不太一样,我安装的是python3.X,我们来看看详细的例子 0x01 春节闲着没事(是有 ...

  4. Python 微信爬虫完整实例【单线程与多线程】

    本文实例讲述了Python 实现的微信爬虫.分享给大家供大家参考,具体如下: 单线程版: import urllib.request import urllib.parse import urllib ...

  5. 爬虫微信公众号图片无法显示

    爬虫微信公众号图片无法显示 html头部增加 <meta name="referrer" content="never">

  6. 网络江湖里爬虫玩的是一场“无间道”

    电影<无间道>中,梁朝伟扮演在黑帮卧底的警察虽然能力出众,但也像普通人一样向往平静的生活,当与其单线联系的黄警官被杀,他在警局的档案又被在警局卧底的伪警察刘建明彻底删除后,再无法证明其真警 ...

  7. python爬虫项目实战教学视频_('[Python爬虫]---Python爬虫进阶项目实战视频',)

    爬虫]---Python 爬虫进阶项目实战 1- Python3+Pip环境配置 2- MongoDB环境配置 3- Redis环境配置 4- 4-MySQL的安装 5- 5-Python多版本共存配 ...

  8. nodejs爬虫与python爬虫_爬虫知多少-(NodeJS 爬虫)

    不久前在公司做了一个关于爬虫的分享,简单介绍了网络爬虫的基础知识.爬虫的运作方式.抓取策略.攻防方式以及如何使用 NodeJS 进行爬虫开发, 在这里分享给各位同学分享一下~ 一.爬虫简介 二.爬虫的 ...

  9. 【0基础学爬虫】爬虫基础之爬虫的基本介绍

    大数据时代,各行各业对数据采集的需求日益增多,网络爬虫的运用也更为广泛,越来越多的人开始学习网络爬虫这项技术,本期为爬虫的基本介绍. 分享一些自己的爬虫项目,学习爬虫一些经验很不错 基于python实 ...

  10. 老司机带你学爬虫——Python爬虫技术分享

    什么是"爬虫"? 简单来说,写一个从web上获取需要数据并按规定格式存储的程序就叫爬虫: 爬虫理论上步骤很简单,第一步获取html源码,第二步分析html并拿到数据.但实际操作,老 ...

最新文章

  1. 最新的10个优质Python开源项目
  2. statTarget-基于QC样本的代谢组学数据校正
  3. intel 965集成显卡开启ubuntu9.10的3d效果
  4. 转:手机流畅的决定性因素
  5. for循环执行次数_VB考试笔记之循环控制结构部分
  6. kryoserializer java_使用Kryo序列化任意Java对象(获取IllegalAccess...
  7. 纷享逍客宣布完成E+轮融资 长山兴资本领投
  8. Linux学习总结(54)——Red Hat Enterprise Linux与CentOS的区别
  9. jquery基础选择器和层次选择器
  10. 指针以及二重指针的理解
  11. NEC公司日前正式回绝了AMD的传唤请求
  12. BAT架构师推荐的9本程序员技术进阶图书,大家看过多少?
  13. 04. 替换空格(C++版本)
  14. python安装plotly教程_python plotly 使用教程
  15. Atitit 衡量项目的规模 1. 预估衡量项目的规模的方法 1 1.1. 方法一、Delphi 法 1 1.2. 方法二、 类比法 1 1.3. 方法三、功能点估计法 2 1.4. 方法四、PER
  16. html div旋转45度,CSS动画 - 在每次悬停时进一步旋转45度
  17. 无线网和网吧服务器,网吧网络使用无线局域网的几个优势所在
  18. Apache Ozone0.4.0调研
  19. 20050620 GNU Bison 中文手册翻译完成
  20. 基于NLM的插值算法

热门文章

  1. 游戏设计入门——游戏程序框架设计
  2. DiskTool 无损分区软件 免费易用的中文版“无损分区魔术师”(完美支持Win7/32与64位系统)...
  3. android手机的短信文件,手机短信下载的文件在哪里(教你如何查看手机短信内容)...
  4. sdk环境变量配置不成功
  5. FPGA入门必看资源
  6. java asm 中文文档_ASM 简介
  7. MATLAB 矩阵及运算
  8. 华为盒子EC6110-T-通刷-免拆刷机固件及教程
  9. idea 格式化模板修改
  10. sql身份证号计算年龄_函数