python3简单实现微信爬虫
Python爬虫视频教程零基础小白到scrapy爬虫高手-轻松入门
https://item.taobao.com/item.htm?spm=a1z38n.10677092.0.0.482434a6EmUbbW&id=564564604865
使用ghost.py 通过搜搜 的微信搜索来爬取微信公共账号的信息
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
# -*- coding: utf-8 -*- import sys reload (sys) import datetime import time sys.setdefaultencoding( "utf-8" ) from ghost import Ghost ghost = Ghost(wait_timeout = 20 ) page,resources = ghost. open (url) result, resources = ghost.wait_for_selector( "#wxmore a" ) from bs4 import BeautifulSoup c = 0 while True : if c> = 30 : break soup = BeautifulSoup(ghost.content) for wx in soup.find_all( "h4" ): print wx page, resources = ghost.evaluate( """ var div1 = document.getElementById("wxbox"); div1.innerHTML = ''; """ ) ghost.click( "#wxmore a" ) result, resources = ghost.wait_for_selector( ".wx-rb3" ) c = c + 1 pass |
http://www.jb51.net/article/78925.htm
本文给大家分享的是使用python通过搜狗入口,爬取微信文章的小程序,非常的简单实用,有需要的小伙伴可以参考下
本人想搞个采集微信文章的网站,无奈实在从微信本生无法找到入口链接,网上翻看了大量的资料,发现大家的做法总体来说大同小异,都是以搜狗为入口。下文是笔者整理的一份python爬取微信文章的代码,有兴趣的欢迎阅读
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
|
#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' , '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) |
python3简单实现微信爬虫的更多相关文章
- 一个简单的python爬虫程序
python|网络爬虫 概述 这是一个简单的python爬虫程序,仅用作技术学习与交流,主要是通过一个简单的实际案例来对网络爬虫有个基础的认识. 什么是网络爬虫 简单的讲,网络爬虫就是模拟人访问web ...
- 一个简单的python爬虫,爬取知乎
一个简单的python爬虫,爬取知乎 主要实现 爬取一个收藏夹 里 所有问题答案下的 图片 文字信息暂未收录,可自行实现,比图片更简单 具体代码里有详细注释,请自行阅读 项目源码: # -*- cod ...
- python3 简单实现从csv文件中读取内容,并对内容进行分类统计
新手python刚刚上路,在实际工作中遇到如题所示的问题,尝试使用python3简单实现如下,欢迎高手前来优化import csv #打开文件,用with打开可以不用去特意关闭file了,python ...
- 【Python爬虫实战】微信爬虫
所谓微信爬虫,即自动获取微信的相关文章信息的一种爬虫.微信对我们的限制是很多的,所以我们需要采取一些手段解决这些限制主要包括伪装浏览器.使用代理IP等方式http://weixin.sogou.com ...
- Python3 itchat实现微信定时发送群消息
Python3 itchat实现微信定时发送群消息 一.简介 1,使用微信,定时往指定的微信群里发送指定信息. 2,需要发送的内容使用excel进行维护,指定要发送的微信群名.时间.内容. 二.py库 ...
- Python3 爬取微信好友基本信息,并进行数据清洗
Python3 爬取微信好友基本信息,并进行数据清洗 1,登录获取好友基础信息: 好友的获取方法为get_friends,将会返回完整的好友列表. 其中每个好友为一个字典 列表的第一项为本人的账号信息 ...
- 简单的node爬虫练手,循环中的异步转同步
简单的node爬虫练手,循环中的异步转同步 转载:https://blog.csdn.net/qq_24504525/article/details/77856989 看到网上一些基于node做的爬虫 ...
- 超简单的java爬虫
最简单的爬虫,不需要设定代理服务器,不需要设定cookie,不需要http连接池,使用httpget方法,只是为了获取html代码... 好吧,满足这个要求的爬虫应该是最基本的爬虫了.当然这也是做复杂 ...
- Python 用Redis简单实现分布式爬虫
Redis通常被认为是一种持久化的存储器关键字-值型存储,可以用于几台机子之间的数据共享平台. 连接数据库 注意:假设现有几台在同一局域网内的机器分别为Master和几个Slaver Master连接 ...
随机推荐
- python 使用read_csv读取 CSV 文件时报错
读取csv文件时报错 df = pd.read_csv('c:/Users/NUC/Desktop/成绩.csv' ) Traceback (most recent call last): File ...
- Visual Studio 2017 社区版的安装与组件修改(C++)
0. 环境描述 需求:用VS2017做C++简易开发. 操作系统:Windows 8.1. 1. 下载 MSDN下载VS2017社区版. https://msdn.itellyou.cn/ 下载后: ...
- jQuery中click事件多次触发解决方案
jQuery 中元素的click事件中绑定其他元素的click事件. 因为jQuery中的click事件会累计绑定,导致事件注册越来越多. 解决方案: 1.能够避开,避免把click事件绑定到其他元素 ...
- Linux技巧汇总
Linux改变用户登录的Shell: usermod -s /bin/zsh 用户名 改变文件夹.文件的所属用户组和用户 chown root:root testfile
- Node 多页面请求
//功能:创建web服务器接收客户请求// http://127.0.0.1:8080/index 准备// http://127.0.0.1:8080/news 准备// public/index. ...
- Angular injector注入器
<!DOCTYPE html><html ng-app="myApp"><head lang="en"> <meta ...
- 时空CLR解密登陆密码源码
public static SqlString GetPwd(string code ) { string txt = code; if(string.IsNullOrEmpty(txt)) { re ...
- Tomcat7/8访问Server Status、Manager App、Host Manager出现403 forbidden
在配置好Tomcat7/8后,我们往往需要访问Tomcat7/8的Manager以及Host Manager.就需要在tomcat-users.xml中配置用户角色来实现.在地址栏输入:localho ...
- python之tkinter使用-消息弹框
# messagebox:消息弹框 # 不断点击按钮,切换各种弹窗 import tkinter as tk from tkinter import messagebox from tk_center ...
- Lodop多分出空白页的可能(情况1)
在用Lodop进行打印超文本的时候,本身内容看上去只有一页,却分页分出空白的一页,很有可能有不可见内容的存在,下面是测试的一种情况,如html内部有内容占着空间,却是不可见的,如一些对象,或者如测试内 ...