博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python知乎热门话题爬取
阅读量:4957 次
发布时间:2019-06-12

本文共 1385 字,大约阅读时间需要 4 分钟。

本例子是参考崔老师的Python3网络爬虫开发实战写的

看网页界面:

热门话题都在 explore-feed feed-item的div里面

源码如下:

import requestsfrom pyquery import PyQuery as pqurl='https://www.zhihu.com/explore'   #今日最热#url='https://www.zhihu.com/explore#monthly-hot'   #本月最热headers={    'User-Agent':"Mozilla/5.0 (Windows NT 6.0) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.36 Safari/536.5",}html=requests.get(url,headers=headers).textdoc=pq(html)#print(doc)items=doc('.explore-feed.feed-item').items()for item in items:    question=item.find('h2').text()    #获取问题    print(question)    author=item.find('.author-link').text()    #获取作者    print(author)    answer=pq(item.find('.content').html()).text()    #获取答案(老师写的没看懂,可能需要jquery知识)    print(answer)    print('===='*10)    answer1=item.find('.zh-summary').text()    #自己写的获取答案。。。    print(answer1)    #第一种写入方法    file=open('知乎.txt','a',encoding='utf-8')    file.write('\n'.join([question,author,answer]))    file.write('\n'+'****'*50+'\n')    file.close()    #第二种写入方法 不需要写关闭方法    with open('知乎.txt','a',encoding='utf-8') as fp:        fp.write('\n'.join([question, author, answer]))        fp.write('\n' + '****' * 50 + '\n')

运行结果如下:

不过比较奇怪的地方是 url为今日最热和本月最热 所爬取的结果一模一样。。而且都只能爬下五个div里面的东西,可能是因为知乎是动态界面。需要用到selenium吧

还有就是

answer=pq(item.find('.content').html()).text() #获取答案(老师写的没看懂,可能需要jquery知识)

这行代码没有看懂。。。。

还得学习jQuery

 
 

 

转载于:https://www.cnblogs.com/yuxuanlian/p/10101244.html

你可能感兴趣的文章
wxAui Frame Management用法
查看>>
制作rpm安装包
查看>>
浏览器DOM操作
查看>>
C# Socket系列三 socket通信的封包和拆包
查看>>
HOT SUMMER 每天都是不一样,积极的去感受生活 C#关闭IE相应的窗口 .
查看>>
windows平台上编译mongdb-cxx-driver
查看>>
optionMenu-普通菜单使用
查看>>
MVC3分页传2参
查看>>
数学家怎么把球面内表面翻出到外表面——斯梅尔悖论
查看>>
2016-2017-2点集拓扑作业[本科生上课时]讲解视频
查看>>
【译】Hello Kubernetes快速交互实验手册
查看>>
appium(13)- server config
查看>>
director.js:客户端的路由---简明中文教程
查看>>
图形学噪声解析
查看>>
IIS负载均衡-Application Request Route详解第六篇:使用失败请求跟踪规则来诊断ARR...
查看>>
javascript中的自执行匿名函数
查看>>
linux权限详解
查看>>
asp.net 验证码技术
查看>>
Dispose,using
查看>>
三成架构 与 Mvc
查看>>