Python爬虫爬取ECVA论文标题、作者、链接
1 import re
2 import requests
3 from bs4 import BeautifulSoup
4 import lxml
5 import traceback
6 import time
7 import json
8 from lxml import etree
9 def get_paper():
10 #https://www.ecva.net/papers/eccv_2020/papers_ECCV/html/267_ECCV_2020_paper.php
11 #https://www.ecva.net/papers/eccv_2020/papers_ECCV/html/283_ECCV_2020_paper.php
12 #https://www.ecva.net/papers/eccv_2020/papers_ECCV/html/343_ECCV_2020_paper.php
13 url='https://www.ecva.net/papers.php'
14 headers = {
15 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.212 Safari/537.36'
16 }
17 response=requests.get(url,headers)
18 response.encoding='utf-8'
19 page_text=response.text
20 #输出页面html
21 # print(page_text)
22 soup = BeautifulSoup(page_text,'lxml')
23 all_dt=soup.find_all('dt',class_='ptitle')
24 #暂存信息
25 temp_res=[]
26 #最后结果集
27 res=[]
28 #链接
29 link_res = []
30 for dt in all_dt:
31 single_dt=str(dt)
32 single_soup=BeautifulSoup(single_dt,'lxml')
33 title=single_soup.find('a').text
34 #存标题
35 temp_res.append(title)
36 #存摘要
37
38 #存关键字
39
40 #存源链接
41 sourcelink=single_soup.find('a')['href']
42 sourcelink="https://www.ecva.net/"+sourcelink
43 temp_res.append(sourcelink)
44 res.append(temp_res)
45 temp_res=[]
46 #爬取作者和pdf文件链接
47 all_dd=soup.find('div',id='content')
48 all_dd=all_dd.find_all('dd')
49 flag=0
50 author=[]
51 download=[]
52 pdfinfo=[]
53 for item in all_dd:
54 if(flag%2==0):
55 #保存作者
56 author.append(item)
57 else:
58 linktext=str(item)
59 linksoup=BeautifulSoup(linktext,'lxml')
60 link_res.append(linksoup.find_all('div',class_='link2'))
61 #解析download 和 pdfinfo
62 flag = flag + 1
63 """
64 继续使用beautifulsoup
65 download_text 和 pdfinfo_text
66 存储author
67 "https://www.ecva.net/"
68 """
69 linkflag=1
70 print(len(link_res))
71 for items in link_res:
72 for item in items:
73 if(linkflag%2==0):
74 pdfinfo_text = str(item)
75 else:
76 download_text = str(item)
77 linkflag=linkflag+1
78 download_text_soup=BeautifulSoup(download_text,'lxml')
79 pdfinfo_text_soup=BeautifulSoup(pdfinfo_text,'lxml')
80 #解析两个链接
81 download.append("https://www.ecva.net/"+download_text_soup.find('a')['href'])
82 pdfinfo.append(pdfinfo_text_soup.find('a')['href'])
83 print(len(download))
84 print(len(pdfinfo))
85 # for item in download :
86 # print(item)
87 print("------------------------------")
88
89 #把作者和download pdfinfo 存到res
90 for i in range(0,len(res)):
91 #添加作者
92 res[i].append(author[0])
93 #添加download
94 res[i].append(download[0])
95 #添加pdfinfo
96 res[i].append(pdfinfo[0])
97 #遍历最终结果集
98 print(res[0])
99 # for item in res:
100 # print(item)
101 return
102
103 if (__name__=='__main__'):
104 get_paper()

Python爬虫爬取ECVA论文标题、作者、链接的更多相关文章
- Python爬虫爬取豆瓣电影名称和链接,分别存入txt,excel和数据库
前提条件是python操作excel和数据库的环境配置是完整的,这个需要在python中安装导入相关依赖包: 实现的具体代码如下: #!/usr/bin/python# -*- coding: utf ...
- 使用Python爬虫爬取网络美女图片
代码地址如下:http://www.demodashi.com/demo/13500.html 准备工作 安装python3.6 略 安装requests库(用于请求静态页面) pip install ...
- 一个简单的python爬虫,爬取知乎
一个简单的python爬虫,爬取知乎 主要实现 爬取一个收藏夹 里 所有问题答案下的 图片 文字信息暂未收录,可自行实现,比图片更简单 具体代码里有详细注释,请自行阅读 项目源码: # -*- cod ...
- Python爬虫爬取全书网小说,程序源码+程序详细分析
Python爬虫爬取全书网小说教程 第一步:打开谷歌浏览器,搜索全书网,然后再点击你想下载的小说,进入图一页面后点击F12选择Network,如果没有内容按F5刷新一下 点击Network之后出现如下 ...
- python爬虫-爬取百度图片
python爬虫-爬取百度图片(转) #!/usr/bin/python# coding=utf-8# 作者 :Y0010026# 创建时间 :2018/12/16 16:16# 文件 :spider ...
- Python爬虫 - 爬取百度html代码前200行
Python爬虫 - 爬取百度html代码前200行 - 改进版, 增加了对字符串的.strip()处理 源代码如下: # 改进版, 增加了 .strip()方法的使用 # coding=utf-8 ...
- 用Python爬虫爬取广州大学教务系统的成绩(内网访问)
用Python爬虫爬取广州大学教务系统的成绩(内网访问) 在进行爬取前,首先要了解: 1.什么是CSS选择器? 每一条css样式定义由两部分组成,形式如下: [code] 选择器{样式} [/code ...
- Python爬虫|爬取喜马拉雅音频
"GOOD Python爬虫|爬取喜马拉雅音频 喜马拉雅是知名的专业的音频分享平台,用户规模突破4.8亿,汇集了有声小说,有声读物,儿童睡前故事,相声小品等数亿条音频,成为国内发展最快.规模 ...
- python爬虫爬取内容中,-xa0,-u3000的含义
python爬虫爬取内容中,-xa0,-u3000的含义 - CSDN博客 https://blog.csdn.net/aiwuzhi12/article/details/54866310
- python爬虫—爬取英文名以及正则表达式的介绍
python爬虫—爬取英文名以及正则表达式的介绍 爬取英文名: 一. 爬虫模块详细设计 (1)整体思路 对于本次爬取英文名数据的爬虫实现,我的思路是先将A-Z所有英文名的连接爬取出来,保存在一个cs ...
随机推荐
- 玩转SpringBoot:动态排除Starter配置,轻松部署
引言 在软件开发中,进行本地单元测试是一项常规且必要的任务.然而,在进行单元测试时,有时需要启动一些中间件服务,如Kafka.Elasticjob等.举例来说,我曾经遇到过一个问题:项目中使用了Red ...
- 【Azure App Service】通过Visual Studio部署Azure App Service 遇见 401 'Unauthorized'错误
问题描述 最近通过Visual Studio 2022部署Azure App Service的时候,突然遇见了部署失败, 401 Unauthorized错误. 错误消息: Build started ...
- 黑马python基础课的一些题
1, 打印5行小星星 思路: 可以用1个星星乘以行数:还可以循环嵌套,外层循环控制行数,内层循环控制每一行应该输出多少个小星星,比如,第一行输出1个,第二行输出2个,内层循环可以当成列,只不过这个列要 ...
- 探索Terraform实践:优化基础设施管理
Terraform 是管理基础设施及代码(IaC)最常用的工具之一,它能使我们安全且可预测地对基础设施应用更改. Terraform作为一个强大的基础设施即代码工具,为开发人员和运维团队提供了一种简单 ...
- kubernetes 1.20版本 二进制部署
kubernetes 1.20版本 二进制部署 目录 kubernetes 1.20版本 二进制部署 1. 前言 2. 环境准备 2.1 机器规划 2.2 软件版本 3. 搭建集群 3.1 机器基本配 ...
- Prometheus技术分享——如何监控宿主机和容器
这一期主要来跟大家聊一下,使用node_exporter工具来暴露主机和因公程序上的指标,利用prometheus来监控宿主机:以及通过通过Cadvisor监控docker容器. 一.部署node_e ...
- 分支合并规则 dev master v1.0.XX 三条分支的合并原则
分支合并规则 dev master v1.0.XX 三条分支的合并原则
- iVCam 可以当电脑的摄像头 同一个wifi
iVCam 可以当电脑的摄像头 同一个wifi
- Neural Dynamics on Complex Networks-KDD20
一.摘要 学习复杂网络上的连续时间动态对于理解.预测和控制科学和工程中的复杂系统至关重要.然而,由于高维系统结构中的组合复杂性.它们难以捉摸的连续时间非线性动力学以及它们的结构-动力学依赖性,使得这项 ...
- 基于DSP的设备振动信号的采集和处理模块研发总结
前记 在能源领域,由于很多地方都是无人值守,设备故障检测是一个必须面对的问题.笔者通过最近几个行业案例了解到,由于很多设备发生故障时候会产生特定频谱的声音,所以该行业对振动监测的需求特别强烈,由于涉 ...