Python 爬取CSDN的极客头条

您所在的位置:网站首页 python爬取csdn Python 爬取CSDN的极客头条

Python 爬取CSDN的极客头条

2022-10-03 09:26| 来源: 网络整理| 查看: 265

Python 爬取CSDN的极客头条 CatalpaFlat 发布于2019-07-31 11:00 / 3026人阅读

摘要:爬取的极客头条工具分析使用浏览器调试面板分析网页结构以及网络请求,容易知道,每一个头条信息结构如图所示因此,我们可以通过定位元素,同时,根据面板的网络请求分析,第一次加载更多数据的请求为第二次的为上述请求已精简,删除了原有请求的部分参数

Python 爬取CSDN的极客头条 工具

Python

Python:requests

Python:BeautifulSoup

分析

使用浏览器调试面板分析网页结构以及网络请求,容易知道,每一个头条信息结构如图所示

因此,我们可以通过 dd.tracking-ad > span > a定位元素,同时,根据Network面板的网络请求分析,第一次加载更多数据的请求为

http://geek.csdn.net/service/news/get_news_list?from=-&size=20&type=HackCount

第二次的为:

http://geek.csdn.net/service/news/get_news_list?from=6:245113&size=20&type=HackCount

上述请求已精简,删除了原有请求的部分参数

也就是说,初始加载更多数据的时候,from参数为-,后续的请求,from是前一次请求所返回来的值,因此,我们可以用Python爬取数据了

代码 # -*- coding: UTF-8 -*- from bs4 import BeautifulSoup import requests import time class CS: def __init__(self): # self.username = username pass def geek(self, _from=None, type="HackCount", size=20): """ url: http://geek.csdn.net/, more: http://geek.csdn.net/service/news/get_news_list?from=-&size=20&type=HackCount :param _from: 加载更多的时候的标志 :param type: 极客头条的类型 :param size: 每页的数目 :return: """ start = "-" if _from: timestamp = int(time.time()) url = "http://geek.csdn.net/service/news/get_news_list?" "from=%s&size=%d&type=%s&_=%d" % (_from, size, type, timestamp) req = requests.get(url) js = req.json() start = js["from"] soup = BeautifulSoup(js["html"], "lxml") else: url = "http://geek.csdn.net/" req = requests.get(url) soup = BeautifulSoup(req.content, "lxml") results = soup.select("dd.tracking-ad > span > a") items = [] for result in results: item = { "href": result["href"], "title": result.string } items.append(item) return { "from": start, "items": items } cs = CS() items = [] _from = "" i = 0 # 这里控制获取多少页的内容 while i

项目地址: 模拟京东登录

吐槽QQ群: 173318043

物理机租用 短信平台 python 极客 python极客编程 python 头条号 python模拟登陆csdn

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/44480.html

上一篇:Python 语法速览与实战清单 下一篇:scrapy的学习之路1(简单的例子)


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3