09-27 python爬取36kr网站文章

该博客介绍了如何使用Python进行网络爬虫,通过lxml和requests库抓取36kr网站的文章。首先定义了一个函数生成指定页数的网址,接着获取每一页的JSON数据,并从中提取文章链接。然后,从文章链接中获取文章的详细信息,包括标题和内容,最后将内容写入到TXT文件中。
摘要由CSDN通过智能技术生成

准备:
from lxml import etree
import requests

#输入页数,得到网址
def wb_url(page_num):
for num in range(1, page_num+1):
url = ‘https://36kr.com/api/search-column/mainsite?per_page=20&page=’ + str(num)
yield url

#得到首页json数据
def rejson(url):
header = {‘User-Agent’: ‘Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36’}
wb_data = requests.get(url, headers=header)
return wb_data.json()

#根据首页,得到文章网址
def article_urls(rejson):
items_list = rejson.get(‘data’).get(‘items’)
for item_dict in items_list:
article_id = item_dict.get(‘id’)
article_url = ‘https://36kr.com/api/post/’ + str(article_id) + ‘/next’
yield article_url

#取出文章页数据,写入文件
def article_data(url):
wb_data = rejson(url)
title = str(wb_data.get(‘data’).get(‘title’)).repl

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值