爬取凤凰网站财经类的新闻,函数时编程,可全部实现,由于内容量大,需要时间太长,服务器会禁止,为了防止,可以将time.sleep()设置的时间长点...
import requestsfrom selenium import webdriverimport timedef grasp(urlT): driver = webdriver.Chrome(r'C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe') #自动化测试程序工具本地所在地 resAll = [] #用于存储单条数据 rest = {} #用于存储单个数据 urls = [] res=requests.get(urlT) for i in range(0,29): print(f'第{i+1}条新闻开始') print(res.json()['data'][i]['title']) try: print(res.json()['data'][i]['newsTime']) except: print('None') print(res.json()['data'][i]['source']) rest['title']=res.json()['data'][i]['title'] try: rest['newsTime'] = res.json()['data'][i]['newsTime'] except: rest['newsTime'] = 'None' rest['source'] = res.json()['data'][i]['source'] url = res.json()['data'][i]['url'] rest['url'] = res.json()['data'][i]['url'] try: driver.get(url) time.sleep(4) contend = driver.find_element_by_class_name('text-3zQ3cZD4').text rest['contend'] = str(contend) print(f'第{i+1}条新闻结束') time.sleep(6) except: rest['contend'] = '嵌套' time.sleep(6) l = driver.find_elements_by_xpath("//p[@class='text-3YbAxaNR']") #获取连接个数 s = driver.find_elements_by_xpath("//p[@class='text-3YbAxaNR']/a") #获取当前页面所有链接 for j in range(0,len(l)): ss = s[j].get_attribute('href') print(type(ss)) try: urls.append(str(str(ss).split()).replace('"','').replace("'","").replace('[','').replace(']','')) #将链接转化为可以存储的字符串 print(urls) except: print(driver.find_element_by_class_name('topic-3bY8Hw-9').text) #输出标题 resAll.append(rest) with open('./news.txt', 'a+', encoding='utf-8') as f: try: f.write(''.join(resAll[i].values())+'\n') except: print('写入失败') resAll.clear() print(urls) for k in range(0,len(urls)): try: driver.get(urls[k]) # time.sleep(3) rest['title1'] = driver.find_element_by_class_name('topic-3bY8Hw-9').text rest['source1'] = driver.find_element_by_class_name('source-2pXi2vGI').text rest['newsTime1'] = driver.find_element_by_xpath('//p[@class="time-hm3v7ddj"]/span').text rest['contend1'] = driver.find_element_by_class_name('text-3zQ3cZD4').text resAll.append(rest) time.sleep(4) with open('./news.txt', 'a+', encoding='utf-8') as f: time.sleep(5) f.write(''.join(resAll[k].values()) + '\n') except: print('内容太多,服务器禁止') url = "https://shankapi.ifeng.com/spring/finance/index/newInfoIndex/75219" #凤凰网财经的apit = grasp(url)
转载于:https://www.cnblogs.com/superSmall/p/11528066.html
爬取凤凰网站财经类的新闻,函数时编程,可全部实现,由于内容量大,需要时间太长,服务器会禁止,为了防止,可以将time.sleep()设置的时间长点...相关推荐
- python爬取凤凰新闻网_python爬取凤凰网站的新闻,及其链接地址,来源,时间和内容,用selenium自动化和requests处理数据...
importrequestsfrom selenium importwebdriverimporttimedefgrasp(urlT): driver= webdriver.Chrome(r'C:\P ...
- 在anaconda下创建我的第一个scrapy爬虫——爬取dmoz网站某一网址下的目录的链接名称以及链接地址...
这里我用的python工具是anaconda. 1.首先创建一个scrapy工程: 打开anaconda promt命令行(注意这里不是使用cmd打开windows下的命令行),进入到需要创建工程的目 ...
- 利用自定义函数实现批量爬取多家公司的新闻
1 需求 利用自定义函数实现批量爬取多家公司的新闻. 2 代码实现 from selenium import webdriver import redef dongfang(company):chro ...
- 爬虫实战:过年你被催婚啦吗?爬取相亲网站,看看当下年轻小姐姐的择偶观。
前言 到了一定年龄,父母可能会催你找女朋友,结婚. 大多数的父母催婚,是父母渐渐老了,想让你找个人照顾你,有热饭吃,生病了有人照顾.在外面不被人欺负. 当然,也有一部分来自周围人的压力,跟你同龄的孩子 ...
- python爬取多页数据_python爬虫实现爬取同一个网站的多页数据代码实例
本篇文章小编给大家分享一下python爬虫实现爬取同一个网站的多页数据代码实例,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看. 一.爬虫的目的 从网上获 ...
- python壁纸数据抓取_python 多线程爬取壁纸网站的示例
基本开发环境 ・ Python 3.6 ・ Pycharm 需要导入的库 目标网页分析 网站是静态网站,没有加密,可以直接爬取 整体思路: 1.先在列表页面获取每张壁纸的详情页地址 2.在壁纸详情页面 ...
- python第一个项目:爬取一个网站的所有图片
目的:爬取一个网站的所有图片 调用库:requests库,BeautifulSoup库 程序设计: 1.函数getHTML():用于获取url的html文本 代码如下 def getHTML(url) ...
- python爬取小说网站资源_利用python的requests和BeautifulSoup库爬取小说网站内容
1. 什么是Requests?html Requests是用Python语言编写的,基于urllib3来改写的,采用Apache2 Licensed 来源协议的HTTP库.python 它比urlli ...
- Python爬取小说网站下载小说
1前言 这个小程序是用来爬取小说网站的小说的,一般的盗版小说网站都是很好爬取的 因为这种网站基本没有反爬虫机制的,所以可以直接爬取 该小程序以该网站http://www.126shu.com/15/下 ...
最新文章
- 钉钉小程序数据传递——子传父,父传子
- 都是套路:高并发系统的降级特技
- 【C语言简单说】三:浮点数变量和字符变量(4)
- Python_urllib
- angular引用bootstrap_angular怎么引入bootstrap?
- PyQt5教程——组件(7)
- jfinal后台获取权限树,以供前台展示
- 【Linux】学习历程
- 识别中文_中文场景文字识别大赛官方baseline
- 为什么Go比Java快这么多?看完这个例子就懂!
- 使用 WordPress 自定义字段功能为文章添加下载按钮
- qt中socket通信流程图_Qt学习 之 Socket通信
- Windows10安装 virtualbox虚拟机
- 新 Nsight Graph、Nsight Aftermath 版本中的性能提升和增强功能
- 动态调试|Maccms SQL 注入分析(附注入盲注脚本)
- 安卓python编辑器-10 个平板电脑上的 Python 编辑器
- ZCMU - 1919: kirito‘s 星爆气流斩
- SX1278与STM8L
- Java正确获取星期Calendar.DAY_OF_WEEK
- Android 基础知识4-3.8 SeekBar(拖动条)详解
热门文章
- 用c语言实现打印乘法口诀表
- 一篇文章读懂摄像头帧率、码流、分辨率的关系
- 浅谈 Linux 内核开发之网络设备驱动[转]
- Java图形化界面编程超详细知识点(8)——列表框
- Python--pygame.Rect
- 用程序来模拟Alt+PrtSc的键盘事件,实现截屏功能
- Android win10 平板 省电,小编解答win10系统Mobile设置更省电的图文办法
- 阿里云共享流量包是用来干什么的?
- 思科交换机配置:三层交换机技术
- [Java] 超简图床(Java版) —— 专为Api而生