python 爬取微信文章


Posted in Python onJanuary 30, 2016

本人想搞个采集微信文章的网站,无奈实在从微信本生无法找到入口链接,网上翻看了大量的资料,发现大家的做法总体来说大同小异,都是以搜狗为入口。下文是笔者整理的一份python爬取微信文章的代码,有兴趣的欢迎阅读

#coding:utf-8
author = 'haoning'
**#!/usr/bin/env python
import time
import datetime
import requests**
import json
import sys
reload(sys)
sys.setdefaultencoding( "utf-8" )
import re
import xml.etree.ElementTree as ET
import os
#OPENID = 'oIWsFtyel13ZMva1qltQ3pfejlwU'
OPENID = 'oIWsFtw_-W2DaHwRz1oGWzL-wF9M&ext'
XML_LIST = []
# get current time in milliseconds
current_milli_time = lambda: int(round(time.time() * 1000))
def get_json(pageIndex):

global OPENID
the_headers = {
'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36',
'Referer': 'http://weixin.sogou.com/gzh?openid={0}'.format(OPENID),
'Host': 'weixin.sogou.com'
}

url = 'http://weixin.sogou.com/gzhjs?cb=sogou.weixin.gzhcb&openid={0}&page={1}&t={2}'.format(OPENID, pageIndex, current_milli_time()) #url
print(url)

response = requests.get(url, headers = the_headers)
# TO-DO; check if match the reg
response_text = response.text
print response_text
json_start = response_text.index('sogou.weixin.gzhcb(') + 19
json_end = response_text.index(')') - 2
json_str = response_text[json_start : json_end] #get json
#print(json_str)
# convert json_str to json object
json_obj = json.loads(json_str) #get json obj
# print json_obj['totalPages']
return json_obj
def add_xml(jsonObj):

global XML_LIST
xmls = jsonObj['items'] #get item
#print type(xmls)
XML_LIST.extend(xmls) #用新列表扩展原来的列表
**[#www.oksousou.com][2]**
# ------------ Main ----------------
print 'play it :) '
# get total pages
default_json_obj = get_json(1)
total_pages = 0
total_items = 0
if(default_json_obj):

# add the default xmls
add_xml(default_json_obj)
# get the rest items
total_pages = default_json_obj['totalPages']
total_items = default_json_obj['totalItems']
print total_pages
# iterate all pages
if(total_pages >= 2):
  for pageIndex in range(2, total_pages + 1):
    add_xml(get_json(pageIndex)) #extend
    print 'load page ' + str(pageIndex)
    print len(XML_LIST)
Python 相关文章推荐
Python写的贪吃蛇游戏例子
Jun 16 Python
Python操作MySQL数据库9个实用实例
Dec 11 Python
总结用Pdb库调试Python的方式及常用的命令
Aug 18 Python
分析python动态规划的递归、非递归实现
Mar 04 Python
利用Python如何将数据写到CSV文件中
Jun 05 Python
python中for循环把字符串或者字典添加到列表的方法
Jul 20 Python
Python Multiprocessing多进程 使用tqdm显示进度条的实现
Aug 13 Python
Django 实现xadmin后台菜单改为中文
Nov 15 Python
django在保存图像的同时压缩图像示例代码详解
Feb 11 Python
Python数据可视化常用4大绘图库原理详解
Oct 23 Python
golang特有程序结构入门教程
Jun 02 Python
Python 中的 copy()和deepcopy()
Nov 07 Python
python生成验证码图片代码分享
Jan 28 #Python
详解Python网络爬虫功能的基本写法
Jan 28 #Python
Python3实现Web网页图片下载
Jan 28 #Python
Python正则获取、过滤或者替换HTML标签的方法
Jan 28 #Python
Python每天必学之bytes字节
Jan 28 #Python
Python装饰器入门学习教程(九步学习)
Jan 28 #Python
基于Python如何使用AIML搭建聊天机器人
Jan 27 #Python
You might like
通俗易懂的php防注入代码
2010/04/07 PHP
php定时计划任务的实现方法详解
2013/06/06 PHP
php使用GD实现颜色渐变实例
2015/06/02 PHP
PHP实现的简单分页类及用法示例
2016/05/06 PHP
thinkphp框架类库扩展操作示例
2019/11/26 PHP
IE8 引入跨站数据获取功能说明
2008/07/22 Javascript
用JavaScrpt实现文件夹简单轻松加密的实现方法图文
2008/09/08 Javascript
jQuery lazyload 的重复加载错误以及修复方法
2010/11/19 Javascript
js日历功能对象
2012/01/12 Javascript
深入理解Javascript作用域与变量提升
2013/12/09 Javascript
JavaScript获取鼠标移动时的坐标(兼容IE8、chome谷歌、Firefox)
2014/09/13 Javascript
JS限制文本框只能输入数字和字母方法
2015/02/28 Javascript
node.js [superAgent] 请求使用示例
2015/03/13 Javascript
原生js模拟淘宝购物车项目实战
2015/11/18 Javascript
canvas的神奇用法
2017/02/03 Javascript
Nodejs中使用phantom将html转为pdf或图片格式的方法
2017/09/18 NodeJs
浅谈VueJS SSR 后端绘制内存泄漏的相关解决经验
2018/12/20 Javascript
基于javascript的拖拽类封装详解
2019/04/19 Javascript
JS实现的排列组合算法示例
2019/07/16 Javascript
微信小程序webview 脚手架使用详解
2019/07/22 Javascript
js实现数字从零慢慢增加到指定数字示例
2019/11/07 Javascript
在Django的模型中添加自定义方法的示例
2015/07/21 Python
python爬虫爬取某站上海租房图片
2018/02/04 Python
Python turtle库绘制菱形的3种方式小结
2019/11/23 Python
使用Python爬虫库BeautifulSoup遍历文档树并对标签进行操作详解
2020/01/25 Python
解决Python import docx出错DLL load failed的问题
2020/02/13 Python
Pandas缺失值2种处理方式代码实例
2020/06/13 Python
医学院护理专业应届生求职信
2013/11/12 职场文书
机关节能减排实施方案
2014/03/17 职场文书
公司法人授权委托书范本
2014/09/12 职场文书
群众路线自查报告及整改措施
2014/11/04 职场文书
维稳承诺书
2015/01/20 职场文书
秦始皇兵马俑导游词
2015/02/02 职场文书
高中数学课堂教学反思
2016/02/18 职场文书
创业计划书之电动车企业
2019/10/11 职场文书
python神经网络编程之手写数字识别
2021/05/08 Python