python爬虫beta版之抓取知乎单页面回答(low 逼版)
闲着无聊,逛知乎。发现想找点有意思的回答也不容易,就想说要不写个爬虫帮我把点赞数最多的给我搞下来方便阅读,也许还能做做数据分析(意淫中~~)
鉴于之前用python写爬虫,帮运营人员抓取过京东的商品品牌以及分类,这次也是用python来搞简单的抓取单页面版,后期再补充哈。
#-*- coding: UTF-8 -*-
import requests
import sys
from bs4 import BeautifulSoup#------知乎答案收集----------#获取网页body里的内容
def get_content(url , data = None):header={'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8','Accept-Encoding': 'gzip, deflate, sdch','Accept-Language': 'zh-CN,zh;q=0.8','Connection': 'keep-alive','User-Agent': 'Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.235'}req = requests.get(url, headers=header)req.encoding = 'utf-8'bs = BeautifulSoup(req.text, "html.parser") # 创建BeautifulSoup对象body = bs.body # 获取body部分return body#获取问题标题
def get_title(html_text):data = html_text.find('span', {'class': 'zm-editable-content'})return data.string.encode('utf-8')#获取问题内容
def get_question_content(html_text):data = html_text.find('div', {'class': 'zm-editable-content'})if data.string is None:out = '';for datastring in data.strings:out = out + datastring.encode('utf-8')print '内容:\n' + outelse:print '内容:\n' + data.string.encode('utf-8')#获取点赞数
def get_answer_agree(body):agree = body.find('span',{'class': 'count'})print '点赞数:' + agree.string.encode('utf-8') + '\n'#获取答案
def get_response(html_text):response = html_text.find_all('div', {'class': 'zh-summary summary clearfix'})for index in range(len(response)):#获取标签answerhref = response[index].find('a', {'class': 'toggle-expand'})if not(answerhref['href'].startswith('javascript')):url = 'http://www.zhihu.com/' + answerhref['href']print urlbody = get_content(url)get_answer_agree(body)answer = body.find('div', {'class': 'zm-editable-content clearfix'})if answer.string is None:out = '';for datastring in answer.strings:out = out + '\n' + datastring.encode('utf-8')print outelse:print answer.string.encode('utf-8')html_text = get_content('https://www.zhihu.com/question/43879769')
title = get_title(html_text)
print "标题:\n" + title + '\n'
questiondata = get_question_content(html_text)
print '\n'
data = get_response(html_text)
输出结果:
python爬虫beta版之抓取知乎单页面回答(low 逼版)相关推荐
- Python爬虫实战一:抓取知乎问题下所有回答
代码是最近(2021.09)新写的~ 需求 任务需求:抓取知乎问题下所有回答,包括其作者.作者粉丝数.回答内容.时间.回答的评论数.回答赞同数以及该回答的链接. 分析 以最近比较引人关注的" ...
- Python爬虫实战六之抓取爱问知识人问题并保存至数据库
大家好,本次为大家带来的是抓取爱问知识人的问题并将问题和答案保存到数据库的方法,涉及的内容包括: Urllib的用法及异常处理 Beautiful Soup的简单应用 MySQLdb的基础用法 正则表 ...
- Python爬虫包 BeautifulSoup 递归抓取实例详解
Python爬虫包 BeautifulSoup 递归抓取实例详解 概要: 爬虫的主要目的就是为了沿着网络抓取需要的内容.它们的本质是一种递归的过程.它们首先需要获得网页的内容,然后分析页面内容并找到另 ...
- [Python爬虫] 三、数据抓取之Requests HTTP 库
往期内容提要: [Python爬虫] 一.爬虫原理之HTTP和HTTPS的请求与响应 [Python爬虫] 二.爬虫原理之定义.分类.流程与编码格式 一.urllib 模块 所谓网页抓取,就是把URL ...
- Python爬虫之gif图片抓取
Python爬虫之gif图片抓取 标签:图片爬虫 这几天,对于怎么去爬取图片很感兴趣,就研究了一下,图片爬虫可以说是有简单,更有复杂的,今天,我做了一个比较简单的gif的图片爬虫,仅仅学习一下怎么进行 ...
- [Python爬虫] 四、数据抓取之HTTP/HTTPS抓包工具Fiddler
往期内容提要: [Python爬虫] 一.爬虫原理之HTTP和HTTPS的请求与响应 [Python爬虫] 二.爬虫原理之定义.分类.流程与编码格式 [Python爬虫] 三.数据抓取之Request ...
- Python爬虫:利用JS逆向抓取携程网景点评论区图片的下载链接
Python爬虫:利用JS逆向抓取携程网景点评论区图片的下载链接 1. 前言 2. 实现过程 3. 运行结果 1. 前言 文章内容可能存在版权问题,为此,小编不提供相关实现代码,只是从js逆向说一说到 ...
- 关于Python爬虫原理和数据抓取1.1
为什么要做爬虫? 首先请问:都说现在是"大数据时代",那数据从何而来? 企业产生的用户数据:百度指数.阿里指数.TBI腾讯浏览指数.新浪微博指数 数据平台购买数据:数据堂.国云数据 ...
- python——爬虫实现网页信息抓取
首先实现关于网页解析.读取等操作我们要用到以下几个模块 import urllib import urllib2 import re 我们可以尝试一下用readline方法读某个网站,比如说百度 de ...
- Python爬虫颜值检测图片抓取?有了这个还怕乔碧萝吗??
推荐一下我建的python学习交流扣扣qun:850973621,群里有免费的视频教程,开发工具.电子书籍.项目源码分享.学习python web.python爬虫.数据分析.大数据,人工智能等技术有 ...
最新文章
- shell批量创建和删除10个系统帐号密码(密码为随机10位字符串)
- node-GetPOST
- 【资源分享】CS起源 V34.4044(经典版本)
- html5 选择列表,Html5添加基于列表的选择美化插件教程
- 《转》不要过打折的生活,当你发现这些你有了,说明你开始成熟了
- [原创]数论个人模板
- 欧盟委员会支持5个开源项目漏洞奖励计划,奖金池20万欧元
- 金庸武侠内功排行榜TOP10
- 我希望进入大学时就能知道的一些事儿 -----作者:瞬息之间
- (附源码)Python学生兼职平台系统 毕业设计 160938
- python gpu加速库比matlab快吗_Python之Unittest和Requests库详解
- 20190227最近比较纠结的问题vue的video中视频的播放和nginx-rtmp的推流以及什么时候推流的分析
- Fama三因子和Carhat 四因子的介绍和计算
- CDH6.3.1安装
- 好看简洁的网站跳转页面
- 了解常见的网络设备及其功能
- Jenkins连接AWS-EKS
- python爬取凤凰新闻_Python爬虫实践(10)--爬取凤凰网汽车资讯详情
- android手机拨号键功能吗,手机拨号键上的#键和*键原来暗藏了这些作用!
- 二维码WIFI自动连接生成格式