想利用爬虫( python 3)登录 Q Q 空间爬些东西,有没有好的方法模拟浏览器登录 QQ 空间

2015-11-03 18:56:56 +08:00
 lyning

玩爬虫第二天,所以很多还不太懂,本来想用爬虫批量爬 QQ 空间用户头像、昵称、还有对应发表过的说说图片,什么都不懂,网上查了一下资料,发现流程大概是:获取页面 html —>正则匹配—>保存下载想要的信息。
然后就写了一个简单的代码测试一下能不能拿到主页的个人图片:

!/usr/bin/dev python3

-- coding:utf-8 --

import urllib.request
import re
import os

def find_imgs(page_url):
pattern = r'<img .? src="( http://(\w+.)+\w+\/.?)"'
html = url_open(page_url).decode('UTF-8')
print(html) # 这里打印出来才知道原来还没登录
img_addrs = re.findall(pattern,html)
print(img_addrs) # 一直都没东西
return img_addrs

def save_imgs(addrs):
# 循环保存就不写了

def download():
os.mkdir('image') #新建文件夹
currentpath = os.getcwd() #获取当前工作目录
url = 'http://user.qzone.qq.com/'
img_addrs = find_imgs(url) #获取图片地址
save_imgs(img_addrs) #保存图片
if __name
_ == 'main':

download();

结果发现爬虫得先登录 QQ ,网上都是爬知乎、豆瓣、 V2EX 、淘宝....居多,希望给个例子参考或者推荐一些学习资源

10378 次点击
所在节点    Python
34 条回复
Anteiku
2015-11-04 06:23:00 +08:00
几年前写过发说说的,你可以试试模拟早期诺基亚手机的 UA ,那种页面比较容易处理。
surefire
2015-11-04 08:17:52 +08:00
记得 Python 的里的模块要设置 UserAgent ,不然默认是一个 python 的什么模块名,人家网站也不是傻子,一看就知道你是爬虫,自己填个什么 Chrome 浏览器的冒充一下。另外登陆问题肯定是大头,解决了这个其他就好办了
lcy
2015-11-04 09:48:51 +08:00
CheungKe
2015-11-04 09:53:11 +08:00
@crytis selenium 很非 gui 解决方案吗
CheungKe
2015-11-04 09:55:13 +08:00
@Victor215 这又不是搜索引擎蜘蛛,你说的都是基础问题,必须要解决的。
CheungKe
2015-11-04 09:57:52 +08:00
@lyning 我们有在做 微信,微博, qq 空间(日志,说说,相册)的数据获取。只有微博是我做的, qq 空间的话,我知道大概思路。
CheungKe
2015-11-04 10:00:17 +08:00
@lcy 手机版微博,虽然登录限制少了。解析 html 是个问题,很多时候 tag 没有 class ,或者 id 。 qq 空间估计也一样。
lyning
2015-11-04 10:47:10 +08:00
@CheungKe 哇,求加好友,深入质询
lyning
2015-11-04 10:48:44 +08:00
@CheungKe 求联系方式
M1ehh
2015-11-04 10:48:54 +08:00
爬早期手机 QQ 空间网页版。
jwangkun
2015-11-04 10:50:39 +08:00
去爬新浪微博吧, QQ 空间是个封闭的空间你大部分东西都是分权限才能看,就算你模拟登录还是一样拿不到关键的数据
CheungKe
2015-11-04 11:51:05 +08:00
@jwangkun 微博也是有权限的
lyning
2015-11-04 15:35:40 +08:00
@lcy 这个 QQ 网页版链接太少了,基本上就是一个纯静态页面
haofly
2015-11-06 06:37:12 +08:00

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/233331

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX