前言
有时候人类真的挺难懂的(扶额苦笑)。
就像我一时兴起用小说下载器,
认认真真地爬了顶会列表,还公开了方法一样。
免责声明:本文仅作为论文der的学习交流使用,仅为个人使用记录,无意传播任何不良信息,尊重论文版权以及小说版权,尊重并理解所有反爬机制;本文不鼓励脚本滥用,希望大家只在有需求的时候尝试获取资源,请尽量减小网络上良心站长服务器的负担;同时本文禁止二传二改,如果看到请小心收藏,可能哪天就没了。
下载
下载所有论文+作者+摘要的方式:
- 怠惰小说下载器:https://greasyfork.org/zh-CN/scripts/25068-downloadallcontent
- 东方永页机:https://greasyfork.org/zh-CN/scripts/438684-pagetual,记得随便导入一个网站的规则。
ndss
ndss(年份改名字):https://www.ndss-symposium.org/ndss2024/accepted-papers/
下载所有论文+作者+摘要的方式:
- 选项参数设置-自定义章节标题,输入内页文字对应选择器:.entry-title。
- 保存设置
- 自定义规则下载:.paper-link-abs
- 开始下载。
结果:
usenix security
全部的:https://www.usenix.org/publications/proceedings
下载所有论文+作者+摘要的方式:
- 想下多少就翻多少页。
- 自定义规则下载:随便输入一篇这个页面上有的文章的标题
- 开始下载。
S&P
参考:怎么找信息安全四大顶会的论文集 - 20199107hxx - 博客园
我后来发现这个参考的方式不如我找到的方式,大家用我的方式吧。
最新的按参考的能这样获取(改年份):https://sp2024.ieee-security.org/accepted-papers.html
然后点开这个“here”:
here链接:https://www.computer.org/csdl/proceedings/sp/2024/1RjE8VKKk1y
旧的我的方式是,先跳转到search界面:https://www.computer.org/csdl/search/default
随便搜一篇sp的论文,然后点目录就行:
就能得到SP会议以及论文列表,其官网是:https://www.computer.org/csdl/proceedings/1000646
只是,针对单年的内容,这网站居然还有反爬我是没想到的。。它的内页是ajax动态加载的,不是静态资源。这就需要用到怠惰下载器的第六层心法。我发现一个点是第六层心法里只提到了doc,其实还有一个变量可以用就是url,我这些直接去看源代码了。。。没办法。【我为了找出一个简便点的方式整了一下午,最后还是放弃直接请求url了orz,实在没有像selenium那种的等待渲染的方式】
下载所有论文+作者+摘要的方式:
- 翻到最下面点“Load All”,或浏览器控制台输入
document.querySelectorAll('.load-all>a')[0].click();
- 复制下文,填入到自定义规则下载:
.article-title@@@@@@
var query_str = `query ($articleId: String!) {
proceeding: proceedingByArticleId(articleId: $articleId) {
id
title
acronym
groupId
volume
displayVolume
year
},
article: articleById(articleId: $articleId) {
id
doi
title
normalizedTitle
abstract
abstracts {
abstractType
content
}
normalizedAbstract
fno
authors {
affiliation
fullName
givenName
surname
}
idPrefix
isOpenAccess
showRecommendedArticles
showBuyMe
hasPdf
pubDate
pubType
pages
year
issn
isbn
notes
notesType
}
webExtras: webExtrasByArticleId(articleId: $articleId) {
id
name
size
location
},
adjacentArticles: adjacentArticles(articleId: $articleId) {
previous {
fno
articleId
}
next {
fno
articleId
}
}
recommendedArticles: recommendedArticlesById(articleId: $articleId) {
id
title
doi
abstractUrl
parentPublication {
id
title
}
},
articleVideos: videosByArticleId(articleId: $articleId) {
id
videoExt
videoType {
featured
recommended
sponsored
}
article {
id
fno
issueNum
pubType
volume
year
idPrefix
doi
title
}
channel {
id
title
status
featured
defaultVideoId
category {
id
title
type
}
}
year
title
description
keywords {
id
title
status
}
speakers {
firstName
lastName
affiliation
}
created
updated
imageThumbnailUrl
runningTime
aspectRatio
metrics {
views
likes
}
notShowInVideoLib
}
}
`;
let articleId = url.split("/").pop();
var request_data={
"query": query_str,
"variables": {
"articleId": articleId
}
}
fetch("https://www.computer.org/csdl/api/v1/graphql", {
"headers": {
"accept": "*/*",
"accept-language": "en-US,en;q=0.9",
"content-type": "application/json",
"sec-fetch-dest": "empty",
"sec-fetch-mode": "cors",
"sec-fetch-site": "same-origin"
},
"body": JSON.stringify(request_data),
"method": "POST"
}).then((response) => response.json()).then((data) => {
console.log(data);
cb(data.data.article.normalizedAbstract);
});
return false;
- 开始下载。
千辛万苦得到的结果!!!如下!!
CCS
https://dl.acm.org/proceedings
这个网站比S&P还难弄,但技术上并不难,找会议的方式:
所有的ccs的:https://dl.acm.org/conference/ccs/proceedings
而且它每个章节都是折叠的要自己点开。。
比如CCS 2023的:https://dl.acm.org/doi/proceedings/10.1145/3576915
为了不手动自己点我直接控制台输入了。整体步骤如下:
- 控制台输入:
document.querySelectorAll('.section__title').forEach(element => element.click());
或者document.querySelectorAll('.accordion-tabbed__control').forEach(element => element.click());
- 等全部加载完成
- 自定义规则下载:随便复制一个article的名字
- 开始下载(如果没代理池的话这样很快就会被封了。。。不过我有)
小声:其实可以在dblp上下,注意选年份是2023:https://dblp.uni-trier.de/search/publ?q=stream%3Aconf%2Fccs%3A%20year%3A2023%3A
可能是我觉得官方的更靠谱吧所以还是采取了这种迂回的方式。官方的貌似少些。
dblp的思路就是通过点这个按钮点到官网去:
不过我不知道怎么区分这几个按钮,也懒得研究了,就先这样吧。
结果:
本账号所有文章均为原创,欢迎转载,请注明文章出处:https://blog.csdn.net/qq_46106285/article/details/141404962。百度和各类采集站皆不可信,搜索请谨慎鉴别。技术类文章一般都有时效性,本人习惯不定期对自己的博文进行修正和更新,因此请访问出处以查看本文的最新版本。