创新实训【2】——爬虫知乎

爬取内容

因为知乎爬虫大部分需要登录,有时使用selenium无法访问页面,先爬取了一个有关山东大学话题的网页。主要包括了具体链接,话题分类和具体话题。
链接如下:https://www.zhihu.com/topic/19864829/index

使用工具

  • python3.7
  • selenium
  • chromeDirver

具体代码在这里插入图片描述

import time
from selenium import webdriver
import warnings
warnings.filterwarnings("ignore")

url='https://www.zhihu.com/topic/19864829/index'
driver=webdriver.Chrome()
driver.get(url)
time.sleep(5)
#print("获取网页")


f=open("zhihu_urls.csv",'a',encoding='utf-8')
ls=['链接','题目','话题']
f.write(",".join(ls)+"\n")

for topicmodule in driver.find_element_by_class_name("TopicIndex-contentMain").find_elements_by_class_name("TopicIndexModule"):
    #话题分类
    topic=topicmodule.find_element_by_class_name("TopicIndexModule-title").text 

    for item in topicmodule.find_elements_by_class_name("TopicIndexModule-item"):
        topic_info=[]
        href=item.find_element_by_tag_name("a").get_attribute("href") #链接
        title=item.find_element_by_tag_name("a").text  #具体话题

        topic_info.append(href)
        topic_info.append(title)
        topic_info.append(topic)
        print(topic_info)

       f.write(",".join(topic_info) + "\n")

f.close()
driver.quit()
print("爬取知乎话题成功")

运行结果在这里插入图片描述

csv内容:
在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值