前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python爬虫实战-微信公众号文章下载-(04)设置代理

python爬虫实战-微信公众号文章下载-(04)设置代理

作者头像
efonfighting
发布2019-10-08 17:54:08
4670
发布2019-10-08 17:54:08
举报
文章被收录于专栏:一番码客一番码客

本文目录:

前言设置代理一番今日

前言

时隔半年,一番再次写公众号文章下载系列的文章。

微信公众号设置了访问次数限制,据一番实践,现在一个ip地址每天只能下载两千篇文章。为了破解这个限制,我们就需要设置下代理。简单讲就是通过另一ip访问微信服务器,然后将获得信息传送回我们本地。

在python里设置代理也非常简单。

设置代理

这里我们用到的就是request库,request.get里便可以通过proxies字段设置代理。为了伪装成浏览器,还可以用headers字段设置访问头。

具体代码如下(为了防止敏感信息泄露,代码里用x.代替了一些信息,小伙伴们可以自行获得代理和自己的访问头之后设置)。真的非常简单。

代码语言:javascript
复制
def open_url(url_str):
    http_ip = [
        '119.101.xxx.xxx:9999',
        '125.40.xxx.xxx:56738',
        '139.198.xxx.107:1080',
        '106.15.xxx.xxx:33543',
        '183.185.xxx.xxx:80'
    ]

    proxy_ip = {
    'http' : random.choice(http_ip),
    }
    print('使用代理的IP:',proxy_ip)
    html = ""
    headers = {
        "User-Agent":"Mozilla/5.0 (Windows NT 10.0; WOW64; rv:43.0) ....",
        "Accept-Language":"zh-CN,zh;q=0...",
        "Accept-Encoding":"gzip, de...",
        "Connection":"..."
    }
    if bool(proxy_ip):
        html = requests.get(url=url_str.replace('http:', 'https:'), timeout=20, headers = headers, proxies=proxy_ip).content

    else:
        html = requests.get(url=url_str, timeout=20, headers = headers).content
    #返回网页内容,动态加载的需要另行处理
    print('返回网页内容长度:',len(html))
    return html

一番今日

从4号回成都到今天6号了,都想不起干了些什么了,流逝太快了,还有一天就要上班了。

最近写的关于electron的技术文章有点水,最近写日更也有点弹尽粮绝了,写文章有点吃了这顿不知道下顿在哪里的感觉。

想着这是一个信息过载的时代,网上那么多资源可供学习,自己也付费买了些课程,但看完的几乎没有。面对这样的处境,一个是需要加强时间管理,自己开发一些信息管理的小工具,一个还是在书中去找答案吧。

为了充分挤出时间,随时带书在身上的同时,还是要随时拿出来阅读,减少手机的零散使用,想想最近的这六天假期,手机看的这些信息,真的想不出有什么沉淀,还不如沉浸在书里,做个单纯专注的阅读者。

一番雾语:学而不思则罔,思而不学则殆。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-10-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 一番码客 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 设置代理
  • 一番今日
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档