推荐文章:【转】gitee 图床因外链访问过多被封,我们该怎么办
优采云 发布时间: 2022-10-31 00:15推荐文章:【转】gitee 图床因外链访问过多被封,我们该怎么办
全文转载,原文链接:gitee图床因外链太多被封,怎么办
文章目录
一、事件原因
今天下午在思考人生,突然收到gitee的官方邮件
赶紧上网查了相关资料,发现3.25日,gitee官网对仓库外链进行了一波排查
好家伙,我的typora里有几百个文章,现在都变成了这种风格
好在在上传之前,CSDN上的文章和公众号会再次拉取图片并传输到自己的服务器上,所以只有自己的typora会受到影响。
2.节目选择
当然gitee已经被封了,github还是可以的,但是我试过用github作为图片库,上传速度真的很可观,所以放弃了
免费套餐还包括微信小程序地图床和哔哩哔哩地图床,但两者不知道后续业务进展如何,也不知道后续收费会如何。因为图床最重要的一点就是稳定性,所以放弃
目前看来,只有大公司提供的OSS服务更可靠。在这里,我们最终选择了阿里云的OSS服务。
由于我们只需要存储图片,因此单张图片的大小控制在50kB以内,统计以文章50张图片为准。即使你每天写文章,年流量也不会超过1G,所以买40G足够流量
趁着优惠,一口气买了三年,才24元:
具体的OSS购买和配置流程,可以点击下方链接观看:
ytpora+picgo+oss配置教程
3. 资源置换
确认OSS配置好,可以上传成功后,我们进行下一步
1.解压原创gitee库
我们需要获取之前所有的图片资源,因为之前每次上传,图片都会以时间戳的形式被赋予一个唯一的名字,这在我们后面更改访问连接时非常重要。
但是当仓库被封锁时,我们无法下载它
这个时候就需要含着泪给gitee官方写一封信
如果速度快的话,一天左右就会解封。这个时候,尽快下载仓库资源。
2.上床资源到OSS
下载完成后,我们解压文件夹,上传到我们的OSS
上传前必须选择公开阅读,否则可能无法访问typora
3.单个文章图片访问路径替换
我们观察上传后gitee和oss返回的图片访问路径。只有指向不同服务器的前缀不同,所以替换这部分即可。
我们可以在typora中直接查找替换,快捷键+f
4.替换整个文件夹图片的访问路径
可惜typora只支持单个文章的全文替换,不能直接替换整个文件夹文件的内容。这里我们编写一个脚本来解决它。
在替换之前,请备份我们当前的 Typora 文章 库以避免意外结果
接下来,运行以下java脚本
运行前别忘了替换内容
import java.io.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
<p>
/**
* @ClassName ChangePicPath
* @Description 修改指定文件夹中的所有信息
* @Author faro_z
* @Date 2022/3/26 5:18 下午
* @Version 1.0
**/
public class ChangePicPath {
private static String folderName = "";
private static String from = "";
private static String to = "";
private static List errFileNameList = new ArrayList();
public static void main(String[] args) throws IOException {
List pathList = getAllFileName(folderName);
System.out.println("成功获取所有文件名称!");
System.out.println("第一个文件名称为:"+pathList.get(0));
// 如果发现文件名称和预期的不一样,别误操作了
System.out.println("输入任意数字,再按回车键继续...");
new Scanner(System.in).nextInt();
int errCount = 0;
for (String path : pathList) {
if (!changeFileContent(from,to,path)) {
errCount++;
}
}
System.out.println("出错文件数为:"+errCount);
System.out.println("所有出错文件名为:");
for (String errPath : errFileNameList) {
System.out.println(errPath);
}
}
/**
* 获取当前文件夹下所有文件名(不包括文件夹名)
* @param folderName
* @return
*/
private static List getAllFileName(String folderName) {
ArrayList filePathList = new ArrayList();
dfs(folderName,filePathList);
return filePathList;
}
/**
* 递归获取文件名
* @param path
* @param filePathList
*/
private static void dfs(String path, ListfilePathList) {
File file = new File(path);
if (file.isFile() && file.getName().endsWith(".md")) {
filePathList.add(file.getAbsolutePath());
return;
}
if (file.isDirectory()) {
File[] files = file.listFiles();
for (File tmpFile : files) {
dfs(tmpFile.getAbsolutePath(),filePathList);
}
}
}
private static boolean changeFileContent(String from,String to,String filePath) {
File file = new File(filePath);
try {
FileReader fileReader = new FileReader(file);
BufferedReader bufferedReader = new BufferedReader(fileReader);
CharArrayWriter tempStream = new CharArrayWriter();
String line = null;
while ((line = bufferedReader.readLine()) != null) {
line = line.replaceAll(from,to);
tempStream.write(line);
tempStream.append(System.getProperty("line.separator"));
}
bufferedReader.close();
// 将内存中的流 写入 文件
FileWriter out = new FileWriter(file);
tempStream.writeTo(out);
out.close();
} catch (IOException e) {
errFileNameList.add(filePath);
return false;
}
return true;
}
}
运行结束后,我们再看看之前的文章
可以返发现,已经全部恢复了
<br />
</p>
推荐文章:怎样创作自己的网站
我相信现在很多年轻人。不仅是电脑设计专业人士,美术设计人士,很多网页设计爱好者都希望拥有自己的网站。他们不仅可以充分发挥自己的兴趣爱好,更重要的是,他们可以将自己的信息上传到网上,同时自我介绍,可以让自己找到适合自己的工作。
以下是如何拥有自己的个人 网站。首先,您必须对网络有一个大致的了解。网页由其他人创建并放置在网络服务器上供所有人浏览。互联网用户可以从中获取他们想要的信息,并与信息发布者进行交流。现在网上民意调查不是很多吗?不仅公平,而且可以立竿见影,方便快捷。这就是互联网的好处!
在制作我们自己的个人网页时,我们至少需要了解一些制作网页的软件。现在最流行和最重要的是MOCRAMEDIA(现已被Adobe收购)推出的网页编辑工具DREAMWEAWER MX2004。上传,同时更新你自己的网站。初学者可以购买理论性强的版本和一些实用的介绍。对相应知识有一定积累的可以使用那些特例介绍的版本。
做个人网页,首先要有一个初步的设计理念,包括网站的版面设计和主题。有了一些想法之后,我们就可以根据自己的想法使用设计工具来设计自己的网页了。
如何成为一名合格的网站编辑
? 沟里没有煨S、FW等软件,看起来很高级。其实,当你实际操作学习的时候,你会发现其实一切都很简单,并没有你想象的那么复杂。现在我将总结一个优秀的网站编辑器的必备技能。1. 写作能力一个优秀的网站编辑必须具备一定的写作能力。因为他会经常处理新闻和信息,所以他对写作还是有一定要求的。提高的方法是多看书,多看门户网站信息,看看别人怎么用词,怎么写新闻。2. 伪原创这是网站编辑的一项非常重要的技能。或许你是理科生,或许你的文笔不太好,或许你写的原创文章没那么快,那么这个时候,伪原创 会帮助你很多。网站一般都有新闻信息的渠道。例如,在购物网站上,编辑通常每天至少更新 10 条信息。如果都是自己写,工作量太大,可以原创1-2篇,其余的都是伪原创的形式。伪原创是修改原文章的标题、开头、结尾和中间段落,尽量让搜索引擎认为这是原创的新闻,怎么办,你可以在百度百科上看下,介绍还是很详细的。3、绘图在编辑更新信息时,网站难免会遇到图片新闻,所以要求小编使用PS或者FW等绘图软件,至少要改变图片的大小和质量,和水印并删除图片。加水印,这些简单的操作都可以从网上下载,一般一周内就能学会。
4、熟悉HTML代码对于优秀的网站编辑器来说,能够理解HTML代码是必不可少的。不要求会手写代码,但至少可以简单理解和修改。可以先看HTML代码来弥补,然后在工作中逐渐熟悉。其实不是很复杂,HTML代码就是简单的代码。一般来说,有了以上的技能,你就可以成为一名合格的网站编辑,但这还不够。成为一名优秀的网站编辑,甚至主编,更高级的技巧: 1. 聚合和炒作能力 这是一篇写软文的高级文章。首先,可以快速汇总业内各种网站的各种有用信息,找出热点,相互结合。当下的火爆(比如前段时间的队长事件),赶紧打造一个比较软的软文,来炒作自己的产品。可能我这么说,大家比较难理解,需要在实践中去探索。如果你有完善的推广团队和编辑团队,可以发布到相关热门地方,进行自我炒作,获得一点流量和潜在客户。2、网站策划能力 一个合格的编辑应该能够根据网站的需求和近期热点,快速策划出优秀的专题页面,然后交付给美工制作。这涉及到,首先要熟悉网站的内容、定位和热点;网站编辑们一定非常熟悉网站的定位,以及网站未来的发展和盈利模式,对模式有清晰的认识,然后找出阶段性热点,选择专题制作的素材。其次,你必须能够独立设计专题页面;根据每个人的能力不同,可以用微软绘图工具、PHOTOSHOP、FIREWORKS、AXURE等各种软件进行设计,根据自己擅长的软件,这里推荐使用axure。简单明了。你可以用微软绘图工具、PHOTOSHOP、FIREWORKS、AXURE等各种软件进行设计,看你擅长什么软件,这里推荐使用axure。简单明了。你可以用微软绘图工具、PHOTOSHOP、FIREWORKS、AXURE等各种软件进行设计,看你擅长什么软件,这里推荐使用axure。简单明了。
3、网站推广能力 一个合格的编辑难免会背负一些流量指标,所以推广能力也是必不可少的,就是尽量让用户认可自己的网站或者版块,分期组织活动或者炒作等。这方面您可以关注我的其他博客文章。4、在线谈判能力 有时候编辑经常会遇到需要和网站的其他编辑或者领导谈判合作或者友情链接的需求,这就需要我们有一定的在线谈判能力。网站获取你应得的资源。不排斥合作。在互联网上,合作是发展的重要手段。有时您需要采取主动并不断寻求合作。我上面说的就是我认为网站编辑进阶后应该掌握的。