mirror of https://github.com/torappinfo/uweb
blog update
parent
0443342b12
commit
7899a5a264
@ -1,44 +0,0 @@
|
|||||||
#!/bin/env python
|
|
||||||
from subprocess import run, PIPE
|
|
||||||
|
|
||||||
def engine2mdlnk(engine):
|
|
||||||
return '<p>' +engine+ '<a class="plus" href="i:0a' +engine+ '"> + </a></p>\n';
|
|
||||||
|
|
||||||
html_head = '''<!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1">
|
|
||||||
<title>主屏快捷访问</title>
|
|
||||||
<style>
|
|
||||||
a{text-decoration: none;}
|
|
||||||
a.icon>img{width:24px;}
|
|
||||||
a.icon>span{font-size:24px;}
|
|
||||||
.plus{font-size:32px;float:right;right:13px;}
|
|
||||||
</style>
|
|
||||||
</head><body>
|
|
||||||
<p>
|
|
||||||
<a href="/uweb">超微浏览器</a>下点击"+"可自动添加至主屏快捷访问。</p>
|
|
||||||
''';
|
|
||||||
|
|
||||||
html_tail ="</body></html>";
|
|
||||||
|
|
||||||
selist = map(engine2mdlnk,[
|
|
||||||
"<a class=icon href='http://i.ifeng.com'><img src='https://m.hao123.com/static/img/fenghuang20171024-56.png'><span>凤凰</span></a>",
|
|
||||||
"<a class=icon href='http://xw.qq.com'><img src='https://m.hao123.com/static/img/tengxun20171024-56.png'><span>腾讯</span></a>",
|
|
||||||
"<a class=icon href='http://m.sohu.com'><img src='https://m.hao123.com/static/img/souhu20171024-56.png'><span>搜狐</span></a>",
|
|
||||||
"<a class=icon href='http://3g.163.com'><img src='https://m.hao123.com/static/img/wangyi20171024-56.png'><span>网易</span></a>",
|
|
||||||
"<a class=icon href='http://m.1905.com'><img src='http://uujian.cn/browser/recommend/video/m.1905.com.png'><span>1905电影</span></a>",
|
|
||||||
"<a class=icon href='https://m.ctrip.com'><img src='https://m.hao123.com/static/img/xiecheng20171121wx.png'><span>携程</span></a>",
|
|
||||||
"<a class=icon href='http://union-click.jd.com'><img src='https://m.hao123.com/static/img/jingdong20171024-56.png'><span>京东</span></a>",
|
|
||||||
"<a class=icon href='http://m.suning.com'><img src='https://m.hao123.com/static/img/suning_20170907.png'><span>苏宁</span></a>",
|
|
||||||
"<a class=icon href='http://m.taobao.com'><img src='https://m.hao123.com/static/img/cxb_taobao.PNG'><span>淘宝</span></a>",
|
|
||||||
"<a class=icon href='http://m.tmall.com'><img src='https://m.hao123.com/static/img/tm.PNG'><span>天猫</span></a>",
|
|
||||||
"<a class=icon href='http://jhs.m.taobao.com'><img src='https://m.hao123.com/static/img/juhuasuan1222icon.png'><span>聚划算</span></a>",
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#"<a class=icon href=''><img src=''><span></span></a>",
|
|
||||||
]);
|
|
||||||
|
|
||||||
llist = [selist];
|
|
||||||
|
|
||||||
print(html_head)
|
|
||||||
print(''.join(string for slist in llist for string in slist))
|
|
||||||
print(html_tail)
|
|
Binary file not shown.
After Width: | Height: | Size: 5.4 KiB |
@ -0,0 +1 @@
|
|||||||
|
(function(){if (document.designMode == 'off'){document.designMode = 'on';}else{document.designMode = 'off';}})()
|
@ -0,0 +1,497 @@
|
|||||||
|
/**
|
||||||
|
* Load the full-size versions of resized images based on their "src"
|
||||||
|
* attribute, or their containing link's "href" attribute. Also, make IFRAMEs
|
||||||
|
* take up the entire width of their offset parent (useful for embedded videos
|
||||||
|
* and whatnot). Same goes for the VIDEO elements.
|
||||||
|
*
|
||||||
|
* @title Load full images
|
||||||
|
*/
|
||||||
|
(function fullimg() {
|
||||||
|
/* Create a new IFRAME to get a "clean" Window object, so we can use its
|
||||||
|
* console. Sometimes sites (e.g. Twitter) override console.log and even
|
||||||
|
* the entire console object. "delete console.log" or "delete console"
|
||||||
|
* does not always work, and messing with the prototype seemed more
|
||||||
|
* brittle than this. */
|
||||||
|
var console = (function () {
|
||||||
|
var iframe = document.getElementById('xxxJanConsole');
|
||||||
|
if (!iframe) {
|
||||||
|
iframe = document.createElementNS('http://www.w3.org/1999/xhtml', 'iframe');
|
||||||
|
iframe.id = 'xxxJanConsole';
|
||||||
|
iframe.style.display = 'none';
|
||||||
|
|
||||||
|
(document.body || document.documentElement).appendChild(iframe);
|
||||||
|
}
|
||||||
|
|
||||||
|
return iframe && iframe.contentWindow && iframe.contentWindow.console || {
|
||||||
|
log: function () {}
|
||||||
|
};
|
||||||
|
})();
|
||||||
|
|
||||||
|
/* Get rid of "width=", "height=" etc. followed by numbers or number pairs
|
||||||
|
* in IMG@src query strings. */
|
||||||
|
var parameterNames = [
|
||||||
|
'width',
|
||||||
|
'Width',
|
||||||
|
|
||||||
|
'height',
|
||||||
|
'Height',
|
||||||
|
|
||||||
|
'maxwidth',
|
||||||
|
'maxWidth',
|
||||||
|
'MaxWidth',
|
||||||
|
|
||||||
|
'maxheight',
|
||||||
|
'maxHeight',
|
||||||
|
'MaxHeight',
|
||||||
|
|
||||||
|
'w',
|
||||||
|
'W',
|
||||||
|
|
||||||
|
'h',
|
||||||
|
'H',
|
||||||
|
|
||||||
|
'fit',
|
||||||
|
'Fit',
|
||||||
|
|
||||||
|
'resize',
|
||||||
|
'reSize',
|
||||||
|
'Resize',
|
||||||
|
|
||||||
|
'size',
|
||||||
|
'Size'
|
||||||
|
];
|
||||||
|
|
||||||
|
parameterNames.forEach(function (parameterName) {
|
||||||
|
var selector = 'img[src*="?' + parameterName + '="]'
|
||||||
|
+ ', img[src*="?"][src*="&' + parameterName + '="]';
|
||||||
|
|
||||||
|
/* Match query string parameters (?[…&]name=value[&…]) where the value is
|
||||||
|
* a number (e.g. "width=1200") or a pair of numbers (e.g. * "resize=640x480"). */
|
||||||
|
var parameterReplacementRegexp = new RegExp('(\\?[^#]*&)?' + parameterName + '=[1-9][0-9]+(?:(?:[xX,*:]|%2[CcAa]|%3[Aa])[1-9][0-9]+)?([^&#]*)');
|
||||||
|
|
||||||
|
[].forEach.call(document.querySelectorAll(selector), function (img) {
|
||||||
|
var newSrc = img.src
|
||||||
|
/* Remove the parameter "name=value" pair from the query string. */
|
||||||
|
.replace(parameterReplacementRegexp, '$1$2')
|
||||||
|
|
||||||
|
/* Remove trailing "&" from the query string. */
|
||||||
|
.replace(/(\?[^#]*)&(#.*)?$/, '$1$2')
|
||||||
|
|
||||||
|
/* Remove empty query strings ("?" not followed by
|
||||||
|
* anything) from the URL. */
|
||||||
|
.replace(/\?(#.*)?$/, '$1')
|
||||||
|
|
||||||
|
/* Remove empty fragment identifiers from the URL. */
|
||||||
|
.replace(/#$/, '')
|
||||||
|
;
|
||||||
|
|
||||||
|
changeSrc(img, newSrc, 'found image with parameter "' + parameterName + '" in query string');
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
/* Show the original image for Polopoly CMS "generated derivatives".
|
||||||
|
*
|
||||||
|
* Example:
|
||||||
|
* https://sporza.be/polopoly_fs/1.2671026!image/1706320883.jpg_gen/derivatives/landscape670/1706320883.jpg
|
||||||
|
* https://sporza.be/polopoly_fs/1.2671026!image/1706320883.jpg
|
||||||
|
*/
|
||||||
|
[].forEach.call(
|
||||||
|
document.querySelectorAll('img[src*="_gen/derivatives/"]'),
|
||||||
|
function (img) {
|
||||||
|
var matches = img.src.match(/(.*\.(jpe?g|png|gif))_gen.*\.\2(\?.*)?$/);
|
||||||
|
if (matches && matches[1]) {
|
||||||
|
changeSrc(img, matches[1], 'found image with Polopoly CMS "generated derivative" URL');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
/* Try to load the originals for images whose source URLs look like
|
||||||
|
* thumbnail/resized versions with dimensions.
|
||||||
|
*/
|
||||||
|
[].forEach.call(
|
||||||
|
document.images,
|
||||||
|
function (img) {
|
||||||
|
var oldSrc = img.src;
|
||||||
|
/* Example:
|
||||||
|
* https://www.cycling-challenge.com/wp-content/uploads/2014/08/IMG_6197-150x150.jpg
|
||||||
|
* https://www.cycling-challenge.com/wp-content/uploads/2014/08/IMG_6197.jpg
|
||||||
|
*/
|
||||||
|
var matches = oldSrc.match(/(.*)[-_.@]\d+x\d+(\.[^\/.]+)/);
|
||||||
|
if (matches && matches[1] && matches[2]) {
|
||||||
|
var newSrc = matches[1] + matches[2];
|
||||||
|
|
||||||
|
return changeSrc(img, newSrc, 'found image whose URL looks like a thumbnail/resized version');
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Example:
|
||||||
|
* https://upload.wikimedia.org/wikipedia/commons/thumb/8/83/Kowloon-Walled-City-1898.jpg/220px-Kowloon-Walled-City-1898.jpg
|
||||||
|
* https://upload.wikimedia.org/wikipedia/commons/8/83/Kowloon-Walled-City-1898.jpg
|
||||||
|
*/
|
||||||
|
matches = oldSrc.match(/(.*\/)thumb\/(.*)\/[^\/]+$/);
|
||||||
|
if (matches) {
|
||||||
|
var newSrc = matches[1] + matches[2];
|
||||||
|
|
||||||
|
return changeSrc(img, newSrc, 'found image whose URL looks like a MediaWiki thumbnail/resized version');
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
/* Try to load the originals for images whose source URLs look like
|
||||||
|
* thumbnail/resized versions with a text label.
|
||||||
|
*
|
||||||
|
* Example:
|
||||||
|
* https://www.crazyguyonabike.com/pics/docs/00/01/27/84/small/DSCF3555.JPG
|
||||||
|
* https://www.crazyguyonabike.com/pics/docs/00/01/27/84/large/DSCF3555.JPG
|
||||||
|
*/
|
||||||
|
var thumbnailPathRegexp = /(.*[/.-])(small|thumb|thumbnail|resized|preview|medium)([/.-].*)/;
|
||||||
|
|
||||||
|
var fullSizePathParts = [
|
||||||
|
'large',
|
||||||
|
'original',
|
||||||
|
'source',
|
||||||
|
'normal',
|
||||||
|
'xlarge',
|
||||||
|
];
|
||||||
|
|
||||||
|
[].forEach.call(
|
||||||
|
document.images,
|
||||||
|
function (img) {
|
||||||
|
var oldSrc = img.src;
|
||||||
|
var matches = oldSrc.match(thumbnailPathRegexp);
|
||||||
|
if (matches) {
|
||||||
|
var newSources = [];
|
||||||
|
|
||||||
|
fullSizePathParts.forEach(function (part) {
|
||||||
|
newSources.push(matches[1] + part + matches[3]);
|
||||||
|
});
|
||||||
|
|
||||||
|
changeSrc(img, newSources, 'found image whose URL looks like a thumbnail/resized version');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
/* Change the IMG@src of linked images to their link's A@href if they look
|
||||||
|
* similar, assuming that the linked version is larger. */
|
||||||
|
[].forEach.call(
|
||||||
|
document.querySelectorAll('a img'),
|
||||||
|
function (img) {
|
||||||
|
if (!img.src) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
var a = img.parentNode;
|
||||||
|
while (a && a.tagName && a.tagName.toLowerCase() !== 'a') {
|
||||||
|
a = a.parentNode;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!a) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
var aHref = a.href;
|
||||||
|
|
||||||
|
if (a.hostname.match(/\.blogspot\.com$/)) {
|
||||||
|
/* Get rid of Blogspot's links to useless HTML wrappers. */
|
||||||
|
aHref = aHref.replace(/\/(s\d+)-h\/([^\/]+)$/, '/$1/$2');
|
||||||
|
}
|
||||||
|
|
||||||
|
if (aHref === img.src) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Simplify a URL for similarity calculation. */
|
||||||
|
function simplifyUrl(url) {
|
||||||
|
return ('' + url)
|
||||||
|
.replace(/\d+/g, '0')
|
||||||
|
.replace(/^https?:/, '');
|
||||||
|
}
|
||||||
|
|
||||||
|
var similarity = getSimilarity(simplifyUrl(img.src), simplifyUrl(a.href));
|
||||||
|
|
||||||
|
if (similarity > 0.66) {
|
||||||
|
changeSrc(img, aHref, 'found linked image with ' + Math.round(similarity * 100) + '% similarity');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
/* Change all Blogspot images that have not been changed yet. */
|
||||||
|
Array.from(
|
||||||
|
document.querySelectorAll('img[src*="bp.blogspot.com/"]')
|
||||||
|
).forEach(img => {
|
||||||
|
let matches;
|
||||||
|
if ((matches = img.src.match(/^(.*\/)s(\d+)(\/[^/]+)$/)) && matches[2] < 9999) {
|
||||||
|
let newSrc = matches[1] + 's9999' + matches[3];
|
||||||
|
changeSrc(img, newSrc, 'found Blogspot image with restricted size (' + matches[2] + ')');
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
/* Use larger YouTube thumbnails. */
|
||||||
|
Array.from(
|
||||||
|
document.querySelectorAll('img[src*="//yt"][src*=".ggpht.com"]')
|
||||||
|
).forEach(img => {
|
||||||
|
let matches;
|
||||||
|
if ((matches = img.src.match(/^(.*\/)s(\d+)([^/]+\/photo\.[^/.]+)$/)) && matches[2] < 1024) {
|
||||||
|
let newSrc = matches[1] + 's1024' + matches[3];
|
||||||
|
changeSrc(img, newSrc, 'found YouTube avatar with restricted size (' + matches[2] + ')');
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
/* Get rid of all IMG@srcset attributes that have not been removed in the
|
||||||
|
* previous steps.
|
||||||
|
*/
|
||||||
|
[].forEach.call(
|
||||||
|
document.querySelectorAll('img[srcset]'),
|
||||||
|
function (img) {
|
||||||
|
console.log('Load full images: removing srcset attribute: ', img);
|
||||||
|
|
||||||
|
img.originalSrcset = img.getAttribute('srcset');
|
||||||
|
img.removeAttribute('srcset');
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
/* Make native VIDEO elements and video IFRAMEs take up the entire width
|
||||||
|
* of their offset parent. */
|
||||||
|
var elementsToEnlargeSelectors = [
|
||||||
|
'video',
|
||||||
|
'iframe.twitter-tweet-rendered',
|
||||||
|
'iframe[src*="embed"]',
|
||||||
|
'iframe[src*="video"]',
|
||||||
|
'iframe[src*="syndication"]',
|
||||||
|
'iframe[class*="altura"]',
|
||||||
|
'iframe[id*="altura"]',
|
||||||
|
'iframe[src*="altura"]',
|
||||||
|
'iframe[src*="//e.infogr.am/"]',
|
||||||
|
'iframe[src*="//www.kickstarter.com/projects/"]',
|
||||||
|
'iframe[src*="//media-service.vara.nl/player.php"]',
|
||||||
|
'iframe[src*="//player.vimeo.com/video/"]'
|
||||||
|
];
|
||||||
|
|
||||||
|
[].forEach.call(
|
||||||
|
document.querySelectorAll(elementsToEnlargeSelectors.join(', ')),
|
||||||
|
function (element) {
|
||||||
|
var scale = element.offsetParent.offsetWidth / element.offsetWidth;
|
||||||
|
var newWidth = Math.round(element.offsetWidth * scale);
|
||||||
|
var newHeight = Math.round(element.offsetHeight * scale);
|
||||||
|
|
||||||
|
console.log(
|
||||||
|
'Load full images: resizing element ', element,
|
||||||
|
' from ' + element.offsetWidth + 'x' + element.offsetHeight
|
||||||
|
+ ' to ' + newWidth + 'x' + newHeight
|
||||||
|
);
|
||||||
|
|
||||||
|
element.xxxJanReadableAllowStyle = true;
|
||||||
|
element.style.width = newWidth + 'px';
|
||||||
|
element.style.height = newHeight + 'px';
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
/* Show controls on AUDIO and VIDEO elements. */
|
||||||
|
[].forEach.call(
|
||||||
|
document.querySelectorAll('audio, video'),
|
||||||
|
function (element) {
|
||||||
|
element.controls = true;
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
/* Show controls on YouTube embeds. */
|
||||||
|
[].forEach.call(
|
||||||
|
document.querySelectorAll('iframe[src^="https://www.youtube.com/embed/"][src*="?"][src*="=0"]'),
|
||||||
|
function (iframe) {
|
||||||
|
var beforeAndAfterHash = iframe.src.split('#');
|
||||||
|
var beforeAndAfterQuery = beforeAndAfterHash[0].split('?');
|
||||||
|
|
||||||
|
|
||||||
|
var newPrefix = beforeAndAfterQuery[0];
|
||||||
|
|
||||||
|
var newQueryString = '';
|
||||||
|
if (beforeAndAfterQuery.length > 1) {
|
||||||
|
beforeAndAfterQuery.shift();
|
||||||
|
|
||||||
|
var newQueryParts = beforeAndAfterQuery
|
||||||
|
.join('?')
|
||||||
|
.split('&')
|
||||||
|
.filter(function (keyValuePair) {
|
||||||
|
return !keyValuePair.match(/^(controls|showinfo|rel)=0$/);
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
if (newQueryParts.length) {
|
||||||
|
newQueryString = '?' + newQueryParts.join('&');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
var newHash = '';
|
||||||
|
if (beforeAndAfterHash.length > 1) {
|
||||||
|
beforeAndAfterHash.shift();
|
||||||
|
newHash = '#' + beforeAndAfterHash.join('#');
|
||||||
|
}
|
||||||
|
|
||||||
|
var newSrc = newPrefix + newQueryString + newHash;
|
||||||
|
|
||||||
|
if (newSrc !== iframe.src) {
|
||||||
|
iframe.src = newSrc;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Crudely calculate the similarity between two strings. Taken from
|
||||||
|
* https://stackoverflow.com/a/10473855. An alternative would be the
|
||||||
|
* Levenshtein distance, implemented in JavaScript here:
|
||||||
|
* https://andrew.hedges.name/experiments/levenshtein/
|
||||||
|
*/
|
||||||
|
function getSimilarity(strA, strB) {
|
||||||
|
var result = 0;
|
||||||
|
|
||||||
|
var i = Math.min(strA.length, strB.length);
|
||||||
|
|
||||||
|
if (i === 0) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
while (--i) {
|
||||||
|
if (strA[i] === strB[i]) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (strA[i].toLowerCase() === strB[i].toLowerCase()) {
|
||||||
|
result++;
|
||||||
|
} else {
|
||||||
|
result += 4;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return 1 - (result + 4 * Math.abs(strA.length - strB.length)) / (2 * (strA.length + strB.length));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Change the IMG@src and fall back to the original source if the new
|
||||||
|
* source triggers an error. You can specify an array of new sources that
|
||||||
|
* will be tried in order. When all of the new sources fail, the original
|
||||||
|
* source will be used.
|
||||||
|
*/
|
||||||
|
function changeSrc(img, newSrc, reason)
|
||||||
|
{
|
||||||
|
var basename = img.src.replace(/[?#].*/, '').replace(/.*?([^\/]*)\/*$/, '$1');
|
||||||
|
|
||||||
|
console.log('[' + basename + '] Load full images: ' + reason + ': ', img);
|
||||||
|
|
||||||
|
if (img.hasNewSource) {
|
||||||
|
console.log('[' + basename + '] Image already has a new source: ', img);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
var newSources = Array.isArray(newSrc)
|
||||||
|
? newSrc
|
||||||
|
: [ newSrc ];
|
||||||
|
|
||||||
|
while ((newSrc = newSources.shift())) {
|
||||||
|
if (newSrc && img.src !== newSrc) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!newSrc) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
console.log('[' + basename + '] → Old img.src: ' + img.src);
|
||||||
|
console.log('[' + basename + '] → Try img.src: ' + newSrc);
|
||||||
|
|
||||||
|
/* Save the original source. */
|
||||||
|
if (!img.originalSrc) {
|
||||||
|
img.originalSrc = img.src;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!img.originalNaturalWidth) {
|
||||||
|
img.originalNaturalWidth = img.naturalWidth;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!img.originalNaturalHeight) {
|
||||||
|
img.originalNaturalHeight = img.naturalHeight;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Save and disable the srcset on the IMG element. */
|
||||||
|
if (img.hasAttribute('srcset')) {
|
||||||
|
img.originalSrcset = img.getAttribute('srcset');
|
||||||
|
img.removeAttribute('srcset');
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Save and disable the srcset in the container PICTURE element's SOURCE descendants. */
|
||||||
|
if (img.parentNode.tagName.toLowerCase() === 'picture') {
|
||||||
|
[].forEach.call(
|
||||||
|
img.parentNode.querySelectorAll('source[srcset]'),
|
||||||
|
function (source) {
|
||||||
|
source.originalSrcset = source.getAttribute('srcset');
|
||||||
|
source.removeAttribute('srcset');
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* When the new source has failed to load, load the next one from the
|
||||||
|
* list of possible new sources. If there are no more left, revert to
|
||||||
|
* the original source. */
|
||||||
|
var errorHandler;
|
||||||
|
|
||||||
|
if (newSources.length) {
|
||||||
|
console.log('[' + basename + '] Setting errorHandler to loadNextNewSrc for ', img, '; newSources: "' + newSources.join('", "') + '"; reason:', reason);
|
||||||
|
errorHandler = function loadNextNewSrc() {
|
||||||
|
img.removeEventListener('error', loadNextNewSrc);
|
||||||
|
changeSrc(img, newSources, reason);
|
||||||
|
};
|
||||||
|
} else {
|
||||||
|
console.log('[' + basename + '] Setting errorHandler to restoreOriginalSrc for ', img, '; originalSrc: "' + img.originalSrc + '"; reason:', reason);
|
||||||
|
errorHandler = function restoreOriginalSrc() {
|
||||||
|
console.log('[' + basename + '] Load full images: error while loading new source for image: ', img);
|
||||||
|
console.log('[' + basename + '] → Unable to load new img.src: ' + newSrc);
|
||||||
|
console.log('[' + basename + '] → Resetting to original img.src: ' + img.originalSrc);
|
||||||
|
|
||||||
|
img.removeEventListener('error', restoreOriginalSrc);
|
||||||
|
|
||||||
|
/* Restore the original source. */
|
||||||
|
img.src = img.originalSrc;
|
||||||
|
|
||||||
|
/* Re-enable the original srcset on the IMG element. */
|
||||||
|
if (img.originalSrcset) {
|
||||||
|
img.setAttribute('srcset', img.originalSrcset);
|
||||||
|
delete img.originalSrcset;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Re-enable the original srcset in the container PICTURE element's SOURCE descendants. */
|
||||||
|
if (img.parentNode.tagName.toLowerCase() === 'picture') {
|
||||||
|
[].forEach.call(
|
||||||
|
img.parentNode.querySelectorAll('source'),
|
||||||
|
function (source) {
|
||||||
|
if (source.originalSrcset) {
|
||||||
|
source.setAttribute('srcset', source.originalSrcset);
|
||||||
|
delete source.originalSrcset;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
img.addEventListener('error', errorHandler);
|
||||||
|
|
||||||
|
/* When the new source image is smaller than the original image,
|
||||||
|
* treat that as an error, too. */
|
||||||
|
img.addEventListener('load', function () {
|
||||||
|
if (img.naturalWidth * img.naturalHeight < img.originalNaturalWidth * img.originalNaturalHeight) {
|
||||||
|
console.log('[' + basename + '] Load full images: new image (', img.naturalWidth, 'x', img.naturalHeight, ') is smaller than old image (', img.originalNaturalWidth, 'x', img.originalNaturalHeight, '): ', img);
|
||||||
|
|
||||||
|
return errorHandler();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (img.src !== img.originalSrc) {
|
||||||
|
console.log('[' + basename + '] → Success: ' + img.src);
|
||||||
|
img.hasNewSource = true;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
/* Finally, actually try to load the image. */
|
||||||
|
img.src = newSrc;
|
||||||
|
}
|
||||||
|
})();
|
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,79 @@
|
|||||||
|
/**
|
||||||
|
* Remove all the IFRAMEs that are off-site or do not have a “src” attribute.
|
||||||
|
* These are typically used for ads and unwanted external content.
|
||||||
|
* navigation etc.
|
||||||
|
*
|
||||||
|
* IFRAMEs without a “src” attribute are also used for sandboxing untrusted
|
||||||
|
* content, e.g. on mailinator.com, but I have not yet found a way to
|
||||||
|
* distinguish between src-less IFRAMEs for ads and src-less IFRAMEs for
|
||||||
|
* “regular” content. Maybe try to guess based on the dimensions? Meh.
|
||||||
|
*
|
||||||
|
* @title rm IFRAMEs
|
||||||
|
*/
|
||||||
|
(function rmi() {
|
||||||
|
/* Create a new IFRAME to get a "clean" Window object, so we can use its
|
||||||
|
* console. Sometimes sites (e.g. Twitter) override console.log and even
|
||||||
|
* the entire console object. "delete console.log" or "delete console"
|
||||||
|
* does not always work, and messing with the prototype seemed more
|
||||||
|
* brittle than this. */
|
||||||
|
let console = (function () {
|
||||||
|
let iframe = document.getElementById('xxxJanConsole');
|
||||||
|
if (!iframe) {
|
||||||
|
iframe = document.createElementNS('http://www.w3.org/1999/xhtml', 'iframe');
|
||||||
|
iframe.id = 'xxxJanConsole';
|
||||||
|
iframe.style.display = 'none';
|
||||||
|
|
||||||
|
(document.body || document.documentElement).appendChild(iframe);
|
||||||
|
}
|
||||||
|
|
||||||
|
return iframe && iframe.contentWindow && iframe.contentWindow.console || {
|
||||||
|
log: function () {}
|
||||||
|
};
|
||||||
|
})();
|
||||||
|
|
||||||
|
/* Keep track of the HTMLDocument instances we have processed. */
|
||||||
|
let processed = new Set();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Is the given node empty-ish? I.e., does it lack child elements and
|
||||||
|
* non-whitespace text?
|
||||||
|
*/
|
||||||
|
function isEmpty(node) {
|
||||||
|
return !node || (!node.childElementCount && (typeof node.textContent !== 'string' || node.textContent.trim() === ''));
|
||||||
|
}
|
||||||
|
|
||||||
|
/* The main function. */
|
||||||
|
(function execute(document) {
|
||||||
|
if (!document || typeof document.querySelectorAll !== 'function' || processed.has(document)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
processed.add(document);
|
||||||
|
|
||||||
|
/* Process all IFRAMEs. */
|
||||||
|
Array.from(document.querySelectorAll('iframe:not(#xxxJanConsole)')).forEach(iframe => {
|
||||||
|
let shouldDelete = false;
|
||||||
|
try {
|
||||||
|
shouldDelete = iframe.contentDocument === null || iframe.src === '';
|
||||||
|
} catch (e) {
|
||||||
|
shouldDelete = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (shouldDelete) {
|
||||||
|
console.log('rm IFRAMEs: found suspicious IFRAME to delete: ', iframe);
|
||||||
|
let parentNode = iframe.parentNode;
|
||||||
|
iframe.remove();
|
||||||
|
|
||||||
|
while (parentNode && isEmpty(parentNode)) {
|
||||||
|
console.log('rm IFRAMEs: found empty parent node to delete: ', parentNode);
|
||||||
|
let oldParentNode = parentNode;
|
||||||
|
parentNode = parentNode.parentNode;
|
||||||
|
oldParentNode.remove();
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
console.log('rm IFRAMEs: found non-suspicious IFRAME to recurse into: ', iframe);
|
||||||
|
execute(iframe.contentDocument);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
})(document);
|
||||||
|
})();
|
@ -0,0 +1,94 @@
|
|||||||
|
/**
|
||||||
|
* Get rid of full-page overlays.
|
||||||
|
*
|
||||||
|
* @title rm overlays
|
||||||
|
*/
|
||||||
|
(function rmo() {
|
||||||
|
function getFirstZIndexedElement(elements) {
|
||||||
|
if (!Array.isArray(elements)) {
|
||||||
|
elements = Array.from(elements);
|
||||||
|
}
|
||||||
|
|
||||||
|
for (let i = 0; i < elements.length; i++) {
|
||||||
|
if (!isNaN(getComputedStyle(elements[i]).zIndex)) {
|
||||||
|
return elements[i];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Recursively execute the logic on the document and its sub-documents. */
|
||||||
|
function execute(document) {
|
||||||
|
/* Look for absolutely positioned (well, Z-indexed) elements that
|
||||||
|
* cover the entire width of the page. Look for them in the vertical
|
||||||
|
* center, to avoid cookie/GDPR/… banners that are typically at the
|
||||||
|
* top or bottom of the window, and slightly away from the edges, to
|
||||||
|
* avoid scrollbars/social sharing toolbars/… */
|
||||||
|
let leftX = 64;
|
||||||
|
let leftY = document.defaultView.innerHeight / 2;
|
||||||
|
let leftOverlay = getFirstZIndexedElement(document.elementsFromPoint(leftX, leftY));
|
||||||
|
if (!leftOverlay)
|
||||||
|
return;
|
||||||
|
|
||||||
|
let rightX = document.defaultView.innerWidth - 64;
|
||||||
|
let rightY = document.defaultView.innerHeight / 2;
|
||||||
|
let rightOverlay = getFirstZIndexedElement(document.elementsFromPoint(rightX, rightY));
|
||||||
|
if (!rightOverlay)
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (leftOverlay !== rightOverlay)
|
||||||
|
return;
|
||||||
|
|
||||||
|
let centerX = document.defaultView.innerWidth / 2;
|
||||||
|
let centerY = document.defaultView.innerHeight / 2;
|
||||||
|
let centerElements = document.elementsFromPoint(centerX, centerY);
|
||||||
|
if (!centerElements.indexOf(leftOverlay) === -1)
|
||||||
|
return;//leftOverlay not in center
|
||||||
|
|
||||||
|
/* Hide the overlay and its “visual descendants” (i.e., the elements
|
||||||
|
* on top of the overlay). */
|
||||||
|
for (let i = 0; i < centerElements.length; i++) {
|
||||||
|
centerElements[i].style.display = 'none';
|
||||||
|
|
||||||
|
if (centerElements[i] === leftOverlay) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Re-enable scrolling on the BODY element. */
|
||||||
|
let currentBodyStyle = document.body.hasAttribute('style')
|
||||||
|
? document.body.getAttribute('style')
|
||||||
|
: '';
|
||||||
|
|
||||||
|
let newBodyStyle = currentBodyStyle +
|
||||||
|
'; overflow: auto !important' +
|
||||||
|
'; position: static !important';
|
||||||
|
|
||||||
|
document.body.setAttribute('style', newBodyStyle);
|
||||||
|
|
||||||
|
/* Re-enable scrolling on Quora.com. */
|
||||||
|
document.body.classList.remove('login_no_scroll');
|
||||||
|
|
||||||
|
/* Re-enable scrolling disabled by inline styles. */
|
||||||
|
[].forEach.call(
|
||||||
|
document.querySelectorAll('[style*="overflow"][style*="hidden"]'),
|
||||||
|
function (elem) {
|
||||||
|
elem.setAttribute('style', elem.getAttribute('style').replace(/overflow\s*:\s*hidden\s*;?/, ''));
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
/* Recurse for frames and IFRAMEs. */
|
||||||
|
try {
|
||||||
|
Array.from(
|
||||||
|
document.querySelectorAll('frame, iframe, object[type^="text/html"], object[type^="application/xhtml+xml"]')
|
||||||
|
).forEach(
|
||||||
|
elem => execute(elem.contentDocument)
|
||||||
|
);
|
||||||
|
} catch (e) {
|
||||||
|
/* Catch and ignore exceptions for out-of-domain access. */
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
execute(document);
|
||||||
|
})();
|
@ -0,0 +1 @@
|
|||||||
|
try{var s = prompt("Enter video speed: "); if(s !="" && s!=null && s!=0){document.querySelector('video').playbackRate = s; void 0}}catch(err){}
|
Binary file not shown.
@ -0,0 +1,129 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head><meta name="generator" content="Hexo 3.8.0">
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
|
<meta name="google-site-verification" content="xBT4GhYoi5qRD5tr338pgPM5OWHHIDR6mNg1a3euekI">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
<meta name="description" content="">
|
||||||
|
<meta name="keyword" content="">
|
||||||
|
<link rel="shortcut icon" href="/uWeb/img/favicon.ico">
|
||||||
|
|
||||||
|
<title>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</title>
|
||||||
|
|
||||||
|
<!-- Custom CSS -->
|
||||||
|
<link rel="stylesheet" href="/uWeb/css/aircloud.css">
|
||||||
|
<link href="//at.alicdn.com/t/font_620856_pl6z7sid89qkt9.css" rel="stylesheet" type="text/css">
|
||||||
|
<!-- ga & ba script hoook -->
|
||||||
|
<script></script>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<div class="site-nav-toggle" id="site-nav-toggle">
|
||||||
|
<button>
|
||||||
|
<span class="btn-bar"></span>
|
||||||
|
<span class="btn-bar"></span>
|
||||||
|
<span class="btn-bar"></span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="index-about">
|
||||||
|
<i> </i>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="index-container">
|
||||||
|
|
||||||
|
<div class="index-left">
|
||||||
|
|
||||||
|
<div class="nav" id="nav">
|
||||||
|
<div class="contents" id="nav-content">
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<a href="/uWeb/">
|
||||||
|
<i class="iconfont icon-shouye1"></i>
|
||||||
|
<span>HOME</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/uWeb/tags">
|
||||||
|
<i class="iconfont icon-biaoqian1"></i>
|
||||||
|
<span>TAGS</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/uWeb/archives">
|
||||||
|
<i class="iconfont icon-guidang2"></i>
|
||||||
|
<span>ARCHIVES</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="search-field" id="search-field">
|
||||||
|
<div class="search-container">
|
||||||
|
<div class="search-input">
|
||||||
|
<span id="esc-search"> <i class="icon-fanhui iconfont"></i></span>
|
||||||
|
<input id="search-input">
|
||||||
|
<span id="begin-search">search</span>
|
||||||
|
</div>
|
||||||
|
<div class="search-result-container" id="search-result-container">
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="index-about-mobile">
|
||||||
|
<i> </i>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="index-middle">
|
||||||
|
<!-- Main Content -->
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<footer class="footer">
|
||||||
|
<ul class="list-inline text-center">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
// We expose some of the variables needed by the front end
|
||||||
|
window.hexo_search_path = ""
|
||||||
|
window.hexo_root = "/uWeb/"
|
||||||
|
window.isPost = false
|
||||||
|
</script>
|
||||||
|
<script src="/uWeb/js/index.js"></script>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</html>
|
@ -0,0 +1,129 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head><meta name="generator" content="Hexo 3.8.0">
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
|
<meta name="google-site-verification" content="xBT4GhYoi5qRD5tr338pgPM5OWHHIDR6mNg1a3euekI">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
<meta name="description" content="">
|
||||||
|
<meta name="keyword" content="">
|
||||||
|
<link rel="shortcut icon" href="/uWeb/img/favicon.ico">
|
||||||
|
|
||||||
|
<title>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</title>
|
||||||
|
|
||||||
|
<!-- Custom CSS -->
|
||||||
|
<link rel="stylesheet" href="/uWeb/css/aircloud.css">
|
||||||
|
<link href="//at.alicdn.com/t/font_620856_pl6z7sid89qkt9.css" rel="stylesheet" type="text/css">
|
||||||
|
<!-- ga & ba script hoook -->
|
||||||
|
<script></script>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<div class="site-nav-toggle" id="site-nav-toggle">
|
||||||
|
<button>
|
||||||
|
<span class="btn-bar"></span>
|
||||||
|
<span class="btn-bar"></span>
|
||||||
|
<span class="btn-bar"></span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="index-about">
|
||||||
|
<i> </i>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="index-container">
|
||||||
|
|
||||||
|
<div class="index-left">
|
||||||
|
|
||||||
|
<div class="nav" id="nav">
|
||||||
|
<div class="contents" id="nav-content">
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<a href="/uWeb/">
|
||||||
|
<i class="iconfont icon-shouye1"></i>
|
||||||
|
<span>HOME</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/uWeb/tags">
|
||||||
|
<i class="iconfont icon-biaoqian1"></i>
|
||||||
|
<span>TAGS</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/uWeb/archives">
|
||||||
|
<i class="iconfont icon-guidang2"></i>
|
||||||
|
<span>ARCHIVES</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="search-field" id="search-field">
|
||||||
|
<div class="search-container">
|
||||||
|
<div class="search-input">
|
||||||
|
<span id="esc-search"> <i class="icon-fanhui iconfont"></i></span>
|
||||||
|
<input id="search-input">
|
||||||
|
<span id="begin-search">search</span>
|
||||||
|
</div>
|
||||||
|
<div class="search-result-container" id="search-result-container">
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="index-about-mobile">
|
||||||
|
<i> </i>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="index-middle">
|
||||||
|
<!-- Main Content -->
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<footer class="footer">
|
||||||
|
<ul class="list-inline text-center">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
// We expose some of the variables needed by the front end
|
||||||
|
window.hexo_search_path = ""
|
||||||
|
window.hexo_root = "/uWeb/"
|
||||||
|
window.isPost = false
|
||||||
|
</script>
|
||||||
|
<script src="/uWeb/js/index.js"></script>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</html>
|
@ -0,0 +1,129 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head><meta name="generator" content="Hexo 3.8.0">
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
|
<meta name="google-site-verification" content="xBT4GhYoi5qRD5tr338pgPM5OWHHIDR6mNg1a3euekI">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
<meta name="description" content="">
|
||||||
|
<meta name="keyword" content="">
|
||||||
|
<link rel="shortcut icon" href="/uWeb/img/favicon.ico">
|
||||||
|
|
||||||
|
<title>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</title>
|
||||||
|
|
||||||
|
<!-- Custom CSS -->
|
||||||
|
<link rel="stylesheet" href="/uWeb/css/aircloud.css">
|
||||||
|
<link href="//at.alicdn.com/t/font_620856_pl6z7sid89qkt9.css" rel="stylesheet" type="text/css">
|
||||||
|
<!-- ga & ba script hoook -->
|
||||||
|
<script></script>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<div class="site-nav-toggle" id="site-nav-toggle">
|
||||||
|
<button>
|
||||||
|
<span class="btn-bar"></span>
|
||||||
|
<span class="btn-bar"></span>
|
||||||
|
<span class="btn-bar"></span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="index-about">
|
||||||
|
<i> </i>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="index-container">
|
||||||
|
|
||||||
|
<div class="index-left">
|
||||||
|
|
||||||
|
<div class="nav" id="nav">
|
||||||
|
<div class="contents" id="nav-content">
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<a href="/uWeb/">
|
||||||
|
<i class="iconfont icon-shouye1"></i>
|
||||||
|
<span>HOME</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/uWeb/tags">
|
||||||
|
<i class="iconfont icon-biaoqian1"></i>
|
||||||
|
<span>TAGS</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/uWeb/archives">
|
||||||
|
<i class="iconfont icon-guidang2"></i>
|
||||||
|
<span>ARCHIVES</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="search-field" id="search-field">
|
||||||
|
<div class="search-container">
|
||||||
|
<div class="search-input">
|
||||||
|
<span id="esc-search"> <i class="icon-fanhui iconfont"></i></span>
|
||||||
|
<input id="search-input">
|
||||||
|
<span id="begin-search">search</span>
|
||||||
|
</div>
|
||||||
|
<div class="search-result-container" id="search-result-container">
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="index-about-mobile">
|
||||||
|
<i> </i>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="index-middle">
|
||||||
|
<!-- Main Content -->
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<footer class="footer">
|
||||||
|
<ul class="list-inline text-center">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
// We expose some of the variables needed by the front end
|
||||||
|
window.hexo_search_path = ""
|
||||||
|
window.hexo_root = "/uWeb/"
|
||||||
|
window.isPost = false
|
||||||
|
</script>
|
||||||
|
<script src="/uWeb/js/index.js"></script>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</html>
|
@ -0,0 +1,129 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head><meta name="generator" content="Hexo 3.8.0">
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
|
<meta name="google-site-verification" content="xBT4GhYoi5qRD5tr338pgPM5OWHHIDR6mNg1a3euekI">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
<meta name="description" content="">
|
||||||
|
<meta name="keyword" content="">
|
||||||
|
<link rel="shortcut icon" href="/uWeb/img/favicon.ico">
|
||||||
|
|
||||||
|
<title>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</title>
|
||||||
|
|
||||||
|
<!-- Custom CSS -->
|
||||||
|
<link rel="stylesheet" href="/uWeb/css/aircloud.css">
|
||||||
|
<link href="//at.alicdn.com/t/font_620856_pl6z7sid89qkt9.css" rel="stylesheet" type="text/css">
|
||||||
|
<!-- ga & ba script hoook -->
|
||||||
|
<script></script>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<div class="site-nav-toggle" id="site-nav-toggle">
|
||||||
|
<button>
|
||||||
|
<span class="btn-bar"></span>
|
||||||
|
<span class="btn-bar"></span>
|
||||||
|
<span class="btn-bar"></span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="index-about">
|
||||||
|
<i> </i>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="index-container">
|
||||||
|
|
||||||
|
<div class="index-left">
|
||||||
|
|
||||||
|
<div class="nav" id="nav">
|
||||||
|
<div class="contents" id="nav-content">
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<a href="/uWeb/">
|
||||||
|
<i class="iconfont icon-shouye1"></i>
|
||||||
|
<span>HOME</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/uWeb/tags">
|
||||||
|
<i class="iconfont icon-biaoqian1"></i>
|
||||||
|
<span>TAGS</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/uWeb/archives">
|
||||||
|
<i class="iconfont icon-guidang2"></i>
|
||||||
|
<span>ARCHIVES</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="search-field" id="search-field">
|
||||||
|
<div class="search-container">
|
||||||
|
<div class="search-input">
|
||||||
|
<span id="esc-search"> <i class="icon-fanhui iconfont"></i></span>
|
||||||
|
<input id="search-input">
|
||||||
|
<span id="begin-search">search</span>
|
||||||
|
</div>
|
||||||
|
<div class="search-result-container" id="search-result-container">
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="index-about-mobile">
|
||||||
|
<i> </i>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="index-middle">
|
||||||
|
<!-- Main Content -->
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<footer class="footer">
|
||||||
|
<ul class="list-inline text-center">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
// We expose some of the variables needed by the front end
|
||||||
|
window.hexo_search_path = ""
|
||||||
|
window.hexo_root = "/uWeb/"
|
||||||
|
window.isPost = false
|
||||||
|
</script>
|
||||||
|
<script src="/uWeb/js/index.js"></script>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</html>
|
@ -0,0 +1,7 @@
|
|||||||
|
apt update
|
||||||
|
apt upgrade
|
||||||
|
apt install axel
|
||||||
|
(cat /sdcard/uweb/default.longclick;cat<<HERE )|awk '!s[$0]++'>a.tmp;mv a.tmp /sdcard/uweb/default.longclick
|
||||||
|
axel:cd /sdcard/Download;axel -n 9
|
||||||
|
HERE
|
||||||
|
|
@ -0,0 +1,13 @@
|
|||||||
|
(cat /data/data/com.termux/files/usr/etc/apt/sources.list;cat<<EOF )|awk '!s[$0]++'>a.tmp;mv a.tmp /data/data/com.termux/files/usr/etc/apt/sources.list
|
||||||
|
deb [trusted=yes] http://termux.iikira.com stable main
|
||||||
|
EOF
|
||||||
|
|
||||||
|
apt update
|
||||||
|
apt upgrade
|
||||||
|
apt install baidupcs-go
|
||||||
|
BaiduPCS-Go config set -appid=266719
|
||||||
|
(cat /sdcard/uweb/default.longclick;cat<<HERE )|awk '!s[$0]++'>a.tmp;mv a.tmp /sdcard/uweb/default.longclick
|
||||||
|
百度离线下载:/data/data/com.termux/files/usr/bin/BaiduPCS-Go od add
|
||||||
|
HERE
|
||||||
|
BaiduPCS-Go login
|
||||||
|
|
@ -0,0 +1,5 @@
|
|||||||
|
pkg install bc
|
||||||
|
(cat<<EOF ;cat /sdcard/uweb/default.acmd)|awk -F: '!s[$1]++'>a.tmp;mv a.tmp /sdcard/uweb/default.acmd
|
||||||
|
超级计算器:text/html:echo "%s"|bc -l -q
|
||||||
|
EOF
|
||||||
|
|
@ -0,0 +1 @@
|
|||||||
|
sed -i '/^sh:/d;/^deb:/d' /sdcard/uweb/default.filecap
|
@ -0,0 +1,14 @@
|
|||||||
|
(cat<<EOF ;cat /sdcard/uweb/default.filecap)|awk -F: '!s[$1]++'>a.tmp;mv a.tmp /sdcard/uweb/default.filecap
|
||||||
|
m3u8:text/html:echo '<video controls width=100% height=100%><source src="%u"></video>'
|
||||||
|
mp3:text/html:echo '<audio controls width=100% height=100%><source src="%u"></audio>'
|
||||||
|
m4b:text/html:echo '<audio controls width=100% height=100%><source src="%u"></audio>'
|
||||||
|
mp4:text/html:echo '<video controls width=100% height=100%><source src="%u"></video>'
|
||||||
|
mkv:text/html:echo '<video controls width=100% height=100%><source src="%u"></video>'
|
||||||
|
doc::am start --user 0 -a android.intent.action.VIEW -d "%u" -t "application/vnd.ms-word"
|
||||||
|
xls::am start --user 0 -a android.intent.action.VIEW -d "%u" -t "application/vnd.ms-excel"
|
||||||
|
ppt::am start --user 0 -a android.intent.action.VIEW -d "%u" -t "application/vnd.ms-powerpoint"
|
||||||
|
docx::am start --user 0 -a android.intent.action.VIEW -d "%u" -t "application/vnd.openxmlformats-officedocument.wordprocessingml.document"
|
||||||
|
xlsx::am start --user 0 -a android.intent.action.VIEW -d "%u" -t "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
|
||||||
|
pptx::am start --user 0 -a android.intent.action.VIEW -d "%u" -t "application/vnd.openxmlformats-officedocument.presentationml.presentation"
|
||||||
|
EOF
|
||||||
|
|
@ -0,0 +1,14 @@
|
|||||||
|
(cat<<EOF ;cat /sdcard/uweb/default.filecap)|awk -F: '!s[$1]++'>a.tmp;mv a.tmp /sdcard/uweb/default.filecap
|
||||||
|
m3u8:text/html:echo '<video controls width=100% height=100%><source src="%u"></video>'
|
||||||
|
mp3:text/html:echo '<audio controls width=100% height=100%><source src="%u"></audio>'
|
||||||
|
m4b:text/html:echo '<audio controls width=100% height=100%><source src="%u"></audio>'
|
||||||
|
mp4:text/html:echo '<video controls width=100% height=100%><source src="%u"></video>'
|
||||||
|
mkv:text/html:echo '<video controls width=100% height=100%><source src="%u"></video>'
|
||||||
|
doc::am start --user 0 -a android.intent.action.VIEW -d 'https://view.officeapps.live.com/op/view.aspx?src=%U'
|
||||||
|
xls::am start --user 0 -a android.intent.action.VIEW -d 'https://view.officeapps.live.com/op/view.aspx?src=%U'
|
||||||
|
ppt::am start --user 0 -a android.intent.action.VIEW -d 'https://view.officeapps.live.com/op/view.aspx?src=%U'
|
||||||
|
docx::am start --user 0 -a android.intent.action.VIEW -d 'https://view.officeapps.live.com/op/view.aspx?src=%U'
|
||||||
|
xlsx::am start --user 0 -a android.intent.action.VIEW -d 'https://view.officeapps.live.com/op/view.aspx?src=%U'
|
||||||
|
pptx::am start --user 0 -a android.intent.action.VIEW -d 'https://view.officeapps.live.com/op/view.aspx?src=%U'
|
||||||
|
EOF
|
||||||
|
|
@ -0,0 +1,4 @@
|
|||||||
|
(cat<<EOF ;cat /sdcard/uweb/default.filecap)|awk -F: '!s[$1]++'>a.tmp;mv a.tmp /sdcard/uweb/default.filecap
|
||||||
|
search:termux/*:!mkdir search;cd search;curl %u>%s;
|
||||||
|
EOF
|
||||||
|
|
@ -0,0 +1 @@
|
|||||||
|
echo 'sh:termux/*:!bash <(curl -s %''u)'>>/sdcard/uweb/default.filecap
|
@ -0,0 +1,8 @@
|
|||||||
|
(cat<<EOF ;cat /sdcard/uweb/default.filecap)|awk -F: '!s[$1]++'>a.tmp;mv a.tmp /sdcard/uweb/default.filecap
|
||||||
|
txt:text/plain:curl -r 0-10240 -s "%u"
|
||||||
|
tar.xz:text/plain:curl -r 0-10240 -s "%u"|tar -J -t
|
||||||
|
tar.gz:text/plain:curl -r 0-10240 -s "%u"|tar -J -t
|
||||||
|
tgz:text/plain:curl -r 0-10240 -s "%u"|tar -J -t
|
||||||
|
tar:text/plain:curl -r 0-10240 -s "%u"|tar -t
|
||||||
|
EOF
|
||||||
|
|
@ -0,0 +1,7 @@
|
|||||||
|
(cat<<EOF ;cat /sdcard/uweb/default.filecap)|awk -F: '!s[$1]++'>a.tmp;mv a.tmp /sdcard/uweb/default.filecap
|
||||||
|
zip:text/plain:curl -r -1024 -s "%u">tmp.zip;unzip -l tmp.zip
|
||||||
|
rar:text/plain:curl -r 0-1024 -s "%u">tmp.rar;unrar l tmp.rar
|
||||||
|
EOF
|
||||||
|
apt install unzip unrar
|
||||||
|
|
||||||
|
|
@ -0,0 +1,7 @@
|
|||||||
|
pkg install gnuplot
|
||||||
|
(cat<<EOF ;cat /sdcard/uweb/default.acmd)|awk -F: '!s[$1]++'>a.tmp;mv a.tmp /sdcard/uweb/default.acmd
|
||||||
|
命令:text/plain:%s
|
||||||
|
函数作图:image/svg+xml:gnuplot -e 'set term svg;set output; plot %s'
|
||||||
|
函数作图(3d):image/svg+xml:gnuplot -e 'set term svg;set output; splot %s'
|
||||||
|
EOF
|
||||||
|
|
@ -0,0 +1,4 @@
|
|||||||
|
(cat<<EOF ;cat /sdcard/uweb/default.cmds)|awk -F: '!s[$1]++'>a.tmp;mv a.tmp /sdcard/uweb/default.cmds
|
||||||
|
历史记录去重::awk -F'\t' '!s[\$2]++' /sdcard/uweb/history.log>a.tmp;mv a.tmp /sdcard/uweb/history.log
|
||||||
|
EOF
|
||||||
|
|
@ -0,0 +1,29 @@
|
|||||||
|
(cat<<EOF ;cat /sdcard/uweb/default.hosts)|awk '!s[$0]++'>a.tmp;mv a.tmp /sdcard/uweb/default.hosts
|
||||||
|
lianmeng.360.cn
|
||||||
|
appjiagu.com
|
||||||
|
adm-cnzz.net
|
||||||
|
alimama.com
|
||||||
|
ipinyou.com
|
||||||
|
mct01.com
|
||||||
|
tanx.com
|
||||||
|
wrating.com
|
||||||
|
cpro.baidu.com
|
||||||
|
pos.baidu.com
|
||||||
|
share.baidu.com
|
||||||
|
bcebos.com
|
||||||
|
e.qq.com
|
||||||
|
gdt.qq.com
|
||||||
|
l.qq.com
|
||||||
|
push.qq.com
|
||||||
|
beacon.sina.com.cn
|
||||||
|
mix.sina.com.cn
|
||||||
|
go.sohu.com
|
||||||
|
inte.sogou.com
|
||||||
|
epro.sogou.com
|
||||||
|
golden1.sogou.com
|
||||||
|
uranus.sogou.com
|
||||||
|
inte.sogoucdn.com
|
||||||
|
lu.sogoucdn.com
|
||||||
|
theta.sogoucdn.com
|
||||||
|
ad.xiaomi.com
|
||||||
|
EOF
|
@ -0,0 +1,2 @@
|
|||||||
|
mkdir -p /sdcard/uweb/bookmarklet
|
||||||
|
curl 'https://caiyunapp.com/dest/trs.js' >/sdcard/uweb/bookmarklet/彩云小译.js
|
@ -0,0 +1,129 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head><meta name="generator" content="Hexo 3.8.0">
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
|
<meta name="google-site-verification" content="xBT4GhYoi5qRD5tr338pgPM5OWHHIDR6mNg1a3euekI">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
<meta name="description" content="">
|
||||||
|
<meta name="keyword" content="">
|
||||||
|
<link rel="shortcut icon" href="/uWeb/img/favicon.ico">
|
||||||
|
|
||||||
|
<title>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</title>
|
||||||
|
|
||||||
|
<!-- Custom CSS -->
|
||||||
|
<link rel="stylesheet" href="/uWeb/css/aircloud.css">
|
||||||
|
<link href="//at.alicdn.com/t/font_620856_pl6z7sid89qkt9.css" rel="stylesheet" type="text/css">
|
||||||
|
<!-- ga & ba script hoook -->
|
||||||
|
<script></script>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<div class="site-nav-toggle" id="site-nav-toggle">
|
||||||
|
<button>
|
||||||
|
<span class="btn-bar"></span>
|
||||||
|
<span class="btn-bar"></span>
|
||||||
|
<span class="btn-bar"></span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="index-about">
|
||||||
|
<i> </i>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="index-container">
|
||||||
|
|
||||||
|
<div class="index-left">
|
||||||
|
|
||||||
|
<div class="nav" id="nav">
|
||||||
|
<div class="contents" id="nav-content">
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<a href="/uWeb/">
|
||||||
|
<i class="iconfont icon-shouye1"></i>
|
||||||
|
<span>HOME</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/uWeb/tags">
|
||||||
|
<i class="iconfont icon-biaoqian1"></i>
|
||||||
|
<span>TAGS</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/uWeb/archives">
|
||||||
|
<i class="iconfont icon-guidang2"></i>
|
||||||
|
<span>ARCHIVES</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="search-field" id="search-field">
|
||||||
|
<div class="search-container">
|
||||||
|
<div class="search-input">
|
||||||
|
<span id="esc-search"> <i class="icon-fanhui iconfont"></i></span>
|
||||||
|
<input id="search-input">
|
||||||
|
<span id="begin-search">search</span>
|
||||||
|
</div>
|
||||||
|
<div class="search-result-container" id="search-result-container">
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="index-about-mobile">
|
||||||
|
<i> </i>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="index-middle">
|
||||||
|
<!-- Main Content -->
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<footer class="footer">
|
||||||
|
<ul class="list-inline text-center">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
// We expose some of the variables needed by the front end
|
||||||
|
window.hexo_search_path = ""
|
||||||
|
window.hexo_root = "/uWeb/"
|
||||||
|
window.isPost = false
|
||||||
|
</script>
|
||||||
|
<script src="/uWeb/js/index.js"></script>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</html>
|
@ -0,0 +1,4 @@
|
|||||||
|
apt install less
|
||||||
|
cd /sdcard/uweb/dict
|
||||||
|
(cat /sdcard/uweb/home.search;ls *.xz|awk '{print $0 ":c:xz -cdfq -- /sdcard/uweb/dict/" $0,"|less -n +\"/^####%s\""}')|awk -F: '!s[$1]++'>a.tmp;mv a.tmp /sdcard/uweb/home.search
|
||||||
|
|
@ -0,0 +1,4 @@
|
|||||||
|
apt install xz-utils grep less
|
||||||
|
cd /sdcard/uweb/dict
|
||||||
|
(cat /sdcard/uweb/home.search;ls *.xz|awk -F: '{print $0 "G:c:xz -cdfq /sdcard/uweb/dict/" $0,"|grep -i \\\'%s\\\'|less" }')|awk -F: '!s[$1]++'>a.tmp;mv a.tmp /sdcard/uweb/home.search
|
||||||
|
|
@ -0,0 +1,135 @@
|
|||||||
|
稻草人书屋:http://www.daocaorenshuwu.com/plus/search.php?q=
|
||||||
|
网易云阅读:http://yuedu.163.com/search.do?type=4&key=
|
||||||
|
17k小说网:http://search.17k.com/search.xhtml?c.st=0&c.q=
|
||||||
|
顶点208:https://www.208xs.com/searchbook.php?search_key=
|
||||||
|
无弹窗小说网:http://www.22ff.org/s_
|
||||||
|
铅笔小说:https://www.23qb.com/modules/article/search.php?searchkey=
|
||||||
|
天籁小说:https://www.23txt.com/search.php?keyword=
|
||||||
|
2K小说:https://m.2kxs.com/modules/article/search.php?searchtype=keywords&searchkey=
|
||||||
|
31小说网:POST:keyword=%s:http://www.xx31xs.org/search.php
|
||||||
|
官术网:http://www.3dllc.cc/search.php?keyword=
|
||||||
|
3G书城:POST:keytype=0&search_key=%s&ver=new:http://www.3gsc.com.cn/search/index/show/pic
|
||||||
|
风雨小说:http://www.44pq.cc/modules/article/search.php?searchtype=articlename&searchkey=
|
||||||
|
武林中文网:https://www.50zw.la/modules/article/search.php?searchkey=
|
||||||
|
55小说:POST:searchkey=%s&searchtype=articlename:http://www.liushuba.com/modules/article/search.php
|
||||||
|
56书库:http://zhannei.baidu.com/cse/search?s=8536225359155591069&entry=1&ie=gbk&q=
|
||||||
|
无限小说:http://www.61ww.com/modules/article/search.php?searchkey=
|
||||||
|
恋上你看书网:http://zhannei.baidu.com/cse/search?s=13795276983184408042&ie=gbk&q=
|
||||||
|
88读书:http://www.88dushu.com/search/so.php?search_field=0&q=
|
||||||
|
88小说:http://www.88xiaoshuo.com/modules/article/search.php?searchkey=
|
||||||
|
九九藏书:http://www.99lib.net/book/search.php?s=13139900387823019677&type=%E7%AB%99%E5%86%85&q=
|
||||||
|
九桃小说:POST:searchkey=%s:https://www.9txs.com/search.html
|
||||||
|
爱尚小说:http://www.a306.com/modules/article/soso.php?searchkey=%s&searchtype=articlename
|
||||||
|
ABC小说网:http://www.abcxs.com/s.php?s=3166108066185075505&ie=gbk&q=
|
||||||
|
阿里文学:http://www.aliwx.com.cn/search?keyword=
|
||||||
|
百书斋:https://baishuzhai.com/searchbook.php?keyword=
|
||||||
|
八月居小说:http://www.bayueju.com/Search/Index/lists.html?g=Search&m=Index&a=lists&type=title&keyword=
|
||||||
|
笔趣馆:https://sou.xanbhx.com/search?siteid=biquguancom&q=
|
||||||
|
笔趣库:https://sou.xanbhx.com/search?t=920895234054625192&siteid=biqukuco&q=
|
||||||
|
QQ阅读:http://chuangshi.qq.com/search/searchindex/type/all/wd/%s.html
|
||||||
|
创世中文网:http://chuangshi.qq.com/search/searchindex/type/all/wd/%s.html
|
||||||
|
创世中文网:http://chuangshi.qq.com/search/searchindex/type/all/wd/%s.html
|
||||||
|
子午书简:https://5kindle.com/?s=
|
||||||
|
精品电子书下载:https://bookset.me/search/
|
||||||
|
掌上书苑:POST:q=%s:https://www.soepub.com/search/index/
|
||||||
|
爱下电子书:https://www.ixdzs.com/bsearch?q=
|
||||||
|
苦瓜书盘:POST:keyboard=%s&show=title%2Cbooksay%2Cbookwriter&tbname=download&tempid=1:https://www.kgbook.com/e/search/index.php
|
||||||
|
我的小书屋:http://mebook.cc/?s=
|
||||||
|
书荒部落:http://noveless.com/?s=
|
||||||
|
盘多多:http://www.panduoduo.net/s/comb/n-%s&f-f2
|
||||||
|
请看小说网:POST:show=title%2Csmalltext%2Cwriter&tbname=txt&tempid=1&keyboard=%s&Submit22=%CB%D1%CB%F7:https://www.qinkan.net/e/search/index.php
|
||||||
|
书语者:https://book.shuyuzhe.com/search/
|
||||||
|
添喜郎:POST:hh=LK&show=title%2Csoftwriter&keyboard=%s&Submit22=%E6%90%9C%E7%B4%A2:https://www.tianxilang.com/e/search/index.php
|
||||||
|
知轩藏书:http://www.zxcs8.com/?keyword=
|
||||||
|
读一读:http://du1du.org/search.htm?keyword=
|
||||||
|
QQ读书:http://chuangshi.qq.com/search/searchindex/type/all/wd/%s.html
|
||||||
|
读书369:http://www.dushu369.com/book/search.asp?Keyword=%s&select=Article&Field=Title
|
||||||
|
读书族:http://www.dushuzu.com/modules/article/search.php?searchkey=
|
||||||
|
飞卢小说:http://b.faloo.com/l/0/1.html?t=1&k=
|
||||||
|
风华居:http://www.fenghuaju.cc/search.php?searchkey=
|
||||||
|
凤鸣轩:http://so.fmx.cn/so/?q=%s&f=_all&ie=gbk
|
||||||
|
格格党:http://zhannei.baidu.com/cse/search?s=10855655014424708676&ie=gbk&q=
|
||||||
|
长佩文学:https://www.gongzicp.com/novel/search/novel/novel/keyword/
|
||||||
|
刺猬猫(欢乐书客):http://www.ciweimao.com/get-search-book-list/%s/1
|
||||||
|
黑岩阅读网:http://www.heiyan.com/search/?queryString=
|
||||||
|
恒言中文网:http://www.hengyan.com/so/?key=%s&s=
|
||||||
|
顺隆书院:https://www.hkslg.net/modules/article/search.php?searchkey=
|
||||||
|
红薯中文网:POST:keyword=%s&keytype=1:http://www.hongshu.com/bookstore.html
|
||||||
|
红袖添香:https://www.hongxiu.com/search?kw=
|
||||||
|
花语女生网:http://search.zongheng.com/search/all/%s/1.html
|
||||||
|
iCiyuan轻小说:http://www.iciyuan.com/index.php/search#keyword=
|
||||||
|
凤凰书城:POST:query=%s:http://www.yc.ifeng.com/book/search/
|
||||||
|
轻文轻小说:https://www.iqing.in/worksearch/#/?q=%s&type=book
|
||||||
|
掌阅小说网:http://yc.ireader.com.cn/books/k%s/
|
||||||
|
爱下电子书:https://www.ixdzs.com/bsearch?q=
|
||||||
|
鲸鱼阅读:http://www.jingyu.com/search/?kw=
|
||||||
|
晋江文学城:http://www.jjwxc.net/search.php?kw=%s&t=1
|
||||||
|
聚书名网:POST:action=search&q=%s:http://www.jsmw266.com/home/search.html
|
||||||
|
卡夜阁:https://m.kayege.com/index/so?searchkey=
|
||||||
|
啃文书库:http://zhannei.baidu.com/cse/search?s=14794566617686326772&entry=1&q=
|
||||||
|
小说大全:http://book.km.com/search.html?search_type=&keyword=
|
||||||
|
连城读书:http://my.lc1001.com/esou/q?dowhat=query&kw=%s&type=1000
|
||||||
|
乐文小说:POST:searchkey=%s:http://www.lewenxiaoshuo.com/novel.php?action=search
|
||||||
|
猎文网:https://www.liewen.cc/search.php?keyword=
|
||||||
|
领域文学:POST:searchkey=%s:https://www.lingyu.org/modules/article/search.php
|
||||||
|
凌云文学网:http://www.lingyun5.com/index.php/Book/Booklist/?key=
|
||||||
|
轻之文库:http://www.linovel.net/search/?kw=
|
||||||
|
阅文书城:https://mcp.yuewen.com/moon/search.html?wd=
|
||||||
|
妙笔读:http://www.miaobidu.com/search.html?searchtype=novelname&searchkey=
|
||||||
|
笔趣阁:http://www.mibaoge.com/search.php?keyword=
|
||||||
|
陌上香坊:http://so.msxf.net/book/search/?t=all&q=
|
||||||
|
亚马逊图书:https://www.amazon.cn/s/ref=nb_sb_noss_2?url=search-alias%3Dstripbooks&field-keywords=
|
||||||
|
中国图书网:http://www.bookschina.com/book_find2/?stp=%s&sCate=0
|
||||||
|
当当读书:http://e.dangdang.com/media/h5/ddreader50/search-page.html?keyword=
|
||||||
|
豆瓣读书:https://book.douban.com/subject_search?search_text=%s&cat=1001
|
||||||
|
中国国家图书馆:http://find.nlc.cn/search/doSearch?actualQuery=
|
||||||
|
泡书吧:http://www.paoshuba.cc/modules/article/search.php?searchkey=
|
||||||
|
品书文学:http://www.pinshu.com/search?searchkey=
|
||||||
|
飘柔文学:http://www.prwx.com/novel.php?action=search&searchtype=articlename&searchkey=
|
||||||
|
起点中文网:https://m.qidian.com/search?kw=
|
||||||
|
奇迹作品:https://www.qijizuopin.com/search/
|
||||||
|
求小说网:http://www.qiuxiaoshuo.com/search.htm?keyword=
|
||||||
|
秋语阁小说:POST:searchkey=%s:https://www.qiuyuge.org/modules/article/search.php
|
||||||
|
棋子小说:POST:searchkey=%s:http://www.qizi.la/modules/article/search.php
|
||||||
|
全书网:http://www.quanshuwang.com/modules/article/search.php?searchkey=%s&searchtype=articlename
|
||||||
|
小说阅读网:https://m.readnovel.com/search?kw=
|
||||||
|
SF轻小说:http://s.sfacg.com/?Key=%s&S=1&SS=0
|
||||||
|
书林文学:http://zhannei.baidu.com/cse/search?s=11488190379777616912&entry=1&ie=gbk&q=
|
||||||
|
书荒啦:https://sou.xanbhx.com/search?siteid=shuhuanglacom&t=920895234054625192&q=
|
||||||
|
书农文学:POST:tbname=bookname&show=title&tempid=1&keyboard=%s:http://www.qxswk.com/e/search/index.php
|
||||||
|
书山中文网:http://yc.ireader.com.cn/books/k%s/
|
||||||
|
四大名著文学网:https://book.sidamingzhu.org/modules/article/search.php?searchtype=all&searchkey=
|
||||||
|
思路客小说:https://www.siluke.tw/search.php?keyword=
|
||||||
|
新浪小说:http://vip.book.sina.com.cn/weibobook/search.php?sk=
|
||||||
|
少年文学:http://www.snwx8.com/modules/article/search.php?searchkey=
|
||||||
|
多多看书(搜狗):https://xiaoshuo.sogou.com/0_0_0_0_heat/?keyword=
|
||||||
|
随想轻小说:POST:searchtype=articlename&searchkey=%s:http://book.suixw.com/modules/article/search.php
|
||||||
|
速阅阁:POST:searchkey=%s:http://www.suyuege.com/modules/article/uso.php
|
||||||
|
书香云集:http://www.sxyj.net/Book_Search.html?keyword=
|
||||||
|
塔读文学:POST:query=%s:http://www.tadu.com/search
|
||||||
|
铁血读书:https://book.tiexue.net/SearchResults.aspx?keywords=%s&noveltype=0
|
||||||
|
uc书盟:http://www.uctxt.com/modules/article/search.php?searchkey=
|
||||||
|
U小说:https://www.uxiaoshuo.com/searchbook.php?keyword=
|
||||||
|
望书阁:http://zhannei.baidu.com/cse/search?s=8391094249448323495&entry=1&ie=gbk&q=
|
||||||
|
文学迷:http://www.wenxuemi.com/search.php?keyword=
|
||||||
|
无图小说网:POST:searchtype=articlename&searchkey=%s:http://www.wutuxs.com/modules/article/search.php
|
||||||
|
梧州中文台:http://www.wzzw.tv/search.htm?keyword=
|
||||||
|
小红花阅读网:https://xhhread.com/lib/searchStoryByKeyword.jhtml?keyword=
|
||||||
|
香网言情小说:http://www.xiang5.com/search.php?keyword=
|
||||||
|
小说族:http://www.xiaoshuozu.com/s.php?ie=gbk&q=
|
||||||
|
言情小说吧:https://www.xs8.cn/search?kw=
|
||||||
|
新笔趣阁:https://www.xxbiquge.com/search.php?keyword=
|
||||||
|
潇湘书院:http://www.xxsy.net/search?s_wd=
|
||||||
|
雅文小说:https://www.yawenb.com/modules/article/search.php?searchtype=keywords&ie=gbk&searchkey=
|
||||||
|
衍墨轩:http://www.ymoxuan.com/search.htm?keyword=
|
||||||
|
云来阁:POST:searchkey=%s:http://www.yunlaige.com/modules/article/search.php
|
||||||
|
云起书院:http://chuangshi.qq.com/search/searchindex/type/all/wd/%s.html
|
||||||
|
着笔中文:https://www.zbzw.la/s.php?ie=gbk&q=
|
||||||
|
斋书苑:POST:s=%s:https://www.zhaishuyuan.com/search/
|
||||||
|
爪机书屋:POST:searchKey%s:https://www.zhuaji.org/search/3673/1.html
|
||||||
|
追书网:https://www.zhuishu.tw/search.aspx?keyword=
|
||||||
|
逐浪小说:POST:k=%s:http://www.zhulang.com/search/index.html
|
||||||
|
杂志虫:POST:searchkey=%s:https://www.ab74.com/modules/article/search.php
|
||||||
|
纵横中文网:http://search.zongheng.com/search/all/%s/1.html
|
||||||
|
E小说:https://www.zwda.com/search.php?keyword=
|
||||||
|
八一中文:https://www.zwdu.com/search.php?keyword=
|
@ -0,0 +1,32 @@
|
|||||||
|
lianmeng.360.cn
|
||||||
|
appjiagu.com
|
||||||
|
adm-cnzz.net
|
||||||
|
alimama.com
|
||||||
|
ipinyou.com
|
||||||
|
mct01.com
|
||||||
|
tanx.com
|
||||||
|
wrating.com
|
||||||
|
pos.baidu.com
|
||||||
|
union.baidu.com
|
||||||
|
share.baidu.com
|
||||||
|
baidu.com ^.?pro
|
||||||
|
bcebos.com
|
||||||
|
e.qq.com
|
||||||
|
gdt.qq.com
|
||||||
|
l.qq.com
|
||||||
|
beacon.sina.com.cn
|
||||||
|
mix.sina.com.cn
|
||||||
|
sina.com.cn ^(d|ad|sax).$
|
||||||
|
aty.sohu.com
|
||||||
|
go.sohu.com
|
||||||
|
sohu.com
|
||||||
|
inte.sogou.com
|
||||||
|
epro.sogou.com
|
||||||
|
union.sogou.com
|
||||||
|
golden1.sogou.com
|
||||||
|
uranus.sogou.com
|
||||||
|
inte.sogoucdn.com
|
||||||
|
lu.sogoucdn.com
|
||||||
|
theta.sogoucdn.com
|
||||||
|
ad.xiaomi.com
|
||||||
|
ifengimg.com ^/feather/
|
@ -0,0 +1,129 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head><meta name="generator" content="Hexo 3.8.0">
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
|
<meta name="google-site-verification" content="xBT4GhYoi5qRD5tr338pgPM5OWHHIDR6mNg1a3euekI">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
<meta name="description" content="">
|
||||||
|
<meta name="keyword" content="">
|
||||||
|
<link rel="shortcut icon" href="/uWeb/img/favicon.ico">
|
||||||
|
|
||||||
|
<title>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</title>
|
||||||
|
|
||||||
|
<!-- Custom CSS -->
|
||||||
|
<link rel="stylesheet" href="/uWeb/css/aircloud.css">
|
||||||
|
<link href="//at.alicdn.com/t/font_620856_pl6z7sid89qkt9.css" rel="stylesheet" type="text/css">
|
||||||
|
<!-- ga & ba script hoook -->
|
||||||
|
<script></script>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<div class="site-nav-toggle" id="site-nav-toggle">
|
||||||
|
<button>
|
||||||
|
<span class="btn-bar"></span>
|
||||||
|
<span class="btn-bar"></span>
|
||||||
|
<span class="btn-bar"></span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="index-about">
|
||||||
|
<i> </i>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="index-container">
|
||||||
|
|
||||||
|
<div class="index-left">
|
||||||
|
|
||||||
|
<div class="nav" id="nav">
|
||||||
|
<div class="contents" id="nav-content">
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<a href="/uWeb/">
|
||||||
|
<i class="iconfont icon-shouye1"></i>
|
||||||
|
<span>HOME</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/uWeb/tags">
|
||||||
|
<i class="iconfont icon-biaoqian1"></i>
|
||||||
|
<span>TAGS</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/uWeb/archives">
|
||||||
|
<i class="iconfont icon-guidang2"></i>
|
||||||
|
<span>ARCHIVES</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="search-field" id="search-field">
|
||||||
|
<div class="search-container">
|
||||||
|
<div class="search-input">
|
||||||
|
<span id="esc-search"> <i class="icon-fanhui iconfont"></i></span>
|
||||||
|
<input id="search-input">
|
||||||
|
<span id="begin-search">search</span>
|
||||||
|
</div>
|
||||||
|
<div class="search-result-container" id="search-result-container">
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="index-about-mobile">
|
||||||
|
<i> </i>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="index-middle">
|
||||||
|
<!-- Main Content -->
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<footer class="footer">
|
||||||
|
<ul class="list-inline text-center">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
// We expose some of the variables needed by the front end
|
||||||
|
window.hexo_search_path = ""
|
||||||
|
window.hexo_root = "/uWeb/"
|
||||||
|
window.isPost = false
|
||||||
|
</script>
|
||||||
|
<script src="/uWeb/js/index.js"></script>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</html>
|
@ -0,0 +1,129 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head><meta name="generator" content="Hexo 3.8.0">
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
|
<meta name="google-site-verification" content="xBT4GhYoi5qRD5tr338pgPM5OWHHIDR6mNg1a3euekI">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
<meta name="description" content="">
|
||||||
|
<meta name="keyword" content="">
|
||||||
|
<link rel="shortcut icon" href="/uWeb/img/favicon.ico">
|
||||||
|
|
||||||
|
<title>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</title>
|
||||||
|
|
||||||
|
<!-- Custom CSS -->
|
||||||
|
<link rel="stylesheet" href="/uWeb/css/aircloud.css">
|
||||||
|
<link href="//at.alicdn.com/t/font_620856_pl6z7sid89qkt9.css" rel="stylesheet" type="text/css">
|
||||||
|
<!-- ga & ba script hoook -->
|
||||||
|
<script></script>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<div class="site-nav-toggle" id="site-nav-toggle">
|
||||||
|
<button>
|
||||||
|
<span class="btn-bar"></span>
|
||||||
|
<span class="btn-bar"></span>
|
||||||
|
<span class="btn-bar"></span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="index-about">
|
||||||
|
<i> </i>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="index-container">
|
||||||
|
|
||||||
|
<div class="index-left">
|
||||||
|
|
||||||
|
<div class="nav" id="nav">
|
||||||
|
<div class="contents" id="nav-content">
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<a href="/uWeb/">
|
||||||
|
<i class="iconfont icon-shouye1"></i>
|
||||||
|
<span>HOME</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/uWeb/tags">
|
||||||
|
<i class="iconfont icon-biaoqian1"></i>
|
||||||
|
<span>TAGS</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/uWeb/archives">
|
||||||
|
<i class="iconfont icon-guidang2"></i>
|
||||||
|
<span>ARCHIVES</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="search-field" id="search-field">
|
||||||
|
<div class="search-container">
|
||||||
|
<div class="search-input">
|
||||||
|
<span id="esc-search"> <i class="icon-fanhui iconfont"></i></span>
|
||||||
|
<input id="search-input">
|
||||||
|
<span id="begin-search">search</span>
|
||||||
|
</div>
|
||||||
|
<div class="search-result-container" id="search-result-container">
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="index-about-mobile">
|
||||||
|
<i> </i>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="index-middle">
|
||||||
|
<!-- Main Content -->
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<footer class="footer">
|
||||||
|
<ul class="list-inline text-center">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
// We expose some of the variables needed by the front end
|
||||||
|
window.hexo_search_path = ""
|
||||||
|
window.hexo_root = "/uWeb/"
|
||||||
|
window.isPost = false
|
||||||
|
</script>
|
||||||
|
<script src="/uWeb/js/index.js"></script>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</html>
|
Binary file not shown.
@ -0,0 +1,129 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head><meta name="generator" content="Hexo 3.8.0">
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
|
<meta name="google-site-verification" content="xBT4GhYoi5qRD5tr338pgPM5OWHHIDR6mNg1a3euekI">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
<meta name="description" content="">
|
||||||
|
<meta name="keyword" content="">
|
||||||
|
<link rel="shortcut icon" href="/uWeb/img/favicon.ico">
|
||||||
|
|
||||||
|
<title>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</title>
|
||||||
|
|
||||||
|
<!-- Custom CSS -->
|
||||||
|
<link rel="stylesheet" href="/uWeb/css/aircloud.css">
|
||||||
|
<link href="//at.alicdn.com/t/font_620856_pl6z7sid89qkt9.css" rel="stylesheet" type="text/css">
|
||||||
|
<!-- ga & ba script hoook -->
|
||||||
|
<script></script>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<div class="site-nav-toggle" id="site-nav-toggle">
|
||||||
|
<button>
|
||||||
|
<span class="btn-bar"></span>
|
||||||
|
<span class="btn-bar"></span>
|
||||||
|
<span class="btn-bar"></span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="index-about">
|
||||||
|
<i> </i>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="index-container">
|
||||||
|
|
||||||
|
<div class="index-left">
|
||||||
|
|
||||||
|
<div class="nav" id="nav">
|
||||||
|
<div class="contents" id="nav-content">
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<a href="/uWeb/">
|
||||||
|
<i class="iconfont icon-shouye1"></i>
|
||||||
|
<span>HOME</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/uWeb/tags">
|
||||||
|
<i class="iconfont icon-biaoqian1"></i>
|
||||||
|
<span>TAGS</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/uWeb/archives">
|
||||||
|
<i class="iconfont icon-guidang2"></i>
|
||||||
|
<span>ARCHIVES</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="search-field" id="search-field">
|
||||||
|
<div class="search-container">
|
||||||
|
<div class="search-input">
|
||||||
|
<span id="esc-search"> <i class="icon-fanhui iconfont"></i></span>
|
||||||
|
<input id="search-input">
|
||||||
|
<span id="begin-search">search</span>
|
||||||
|
</div>
|
||||||
|
<div class="search-result-container" id="search-result-container">
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="index-about-mobile">
|
||||||
|
<i> </i>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="index-middle">
|
||||||
|
<!-- Main Content -->
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<footer class="footer">
|
||||||
|
<ul class="list-inline text-center">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
// We expose some of the variables needed by the front end
|
||||||
|
window.hexo_search_path = ""
|
||||||
|
window.hexo_root = "/uWeb/"
|
||||||
|
window.isPost = false
|
||||||
|
</script>
|
||||||
|
<script src="/uWeb/js/index.js"></script>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</html>
|
@ -0,0 +1,22 @@
|
|||||||
|
磁力搜索:http://www.btmovi.space/
|
||||||
|
磁力云搜索:http://www.eclyun.com/
|
||||||
|
磁力星:https://www.cilixing.pw/
|
||||||
|
skrbt:https://skrbtcili.buzz/
|
||||||
|
磁力站:http://cili001.com/
|
||||||
|
哔哩搜索:https://biliworld.xyz/
|
||||||
|
bt1207:https://bt1207cl.icu/
|
||||||
|
磁力蜘蛛:http://www.eclzz.com/
|
||||||
|
Acg搜索:http://www.acgsou.com/
|
||||||
|
种子搜:https://www.dongxingdi.com/
|
||||||
|
燕子bt:https://www.54new.com/
|
||||||
|
bthub:https://bthub.xyz/
|
||||||
|
磁力天堂:http://www.cltt.me/
|
||||||
|
磁力宝:http://www.clb.biz/
|
||||||
|
搜bt磁力:http://www.sobt5.pw/
|
||||||
|
bt磁力车:http://5i0.fun/6qPP
|
||||||
|
种子搜:https://www.zhongzihu.com/
|
||||||
|
高清MP4吧:http://www.mp4ba.com
|
||||||
|
Bt电影天堂:http://www.btbtdy.me
|
||||||
|
高清电影网:http://gaoqing.la
|
||||||
|
两个BT:https://www.bttwo.com/
|
||||||
|
磁力搜索:http://www.cilil.cn/
|
@ -0,0 +1 @@
|
|||||||
|
search site:window.open("i:15site:" + location.hostname)
|
@ -0,0 +1,129 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head><meta name="generator" content="Hexo 3.8.0">
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
|
<meta name="google-site-verification" content="xBT4GhYoi5qRD5tr338pgPM5OWHHIDR6mNg1a3euekI">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
<meta name="description" content="">
|
||||||
|
<meta name="keyword" content="">
|
||||||
|
<link rel="shortcut icon" href="/uWeb/img/favicon.ico">
|
||||||
|
|
||||||
|
<title>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</title>
|
||||||
|
|
||||||
|
<!-- Custom CSS -->
|
||||||
|
<link rel="stylesheet" href="/uWeb/css/aircloud.css">
|
||||||
|
<link href="//at.alicdn.com/t/font_620856_pl6z7sid89qkt9.css" rel="stylesheet" type="text/css">
|
||||||
|
<!-- ga & ba script hoook -->
|
||||||
|
<script></script>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<div class="site-nav-toggle" id="site-nav-toggle">
|
||||||
|
<button>
|
||||||
|
<span class="btn-bar"></span>
|
||||||
|
<span class="btn-bar"></span>
|
||||||
|
<span class="btn-bar"></span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="index-about">
|
||||||
|
<i> </i>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="index-container">
|
||||||
|
|
||||||
|
<div class="index-left">
|
||||||
|
|
||||||
|
<div class="nav" id="nav">
|
||||||
|
<div class="contents" id="nav-content">
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<a href="/uWeb/">
|
||||||
|
<i class="iconfont icon-shouye1"></i>
|
||||||
|
<span>HOME</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/uWeb/tags">
|
||||||
|
<i class="iconfont icon-biaoqian1"></i>
|
||||||
|
<span>TAGS</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/uWeb/archives">
|
||||||
|
<i class="iconfont icon-guidang2"></i>
|
||||||
|
<span>ARCHIVES</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="search-field" id="search-field">
|
||||||
|
<div class="search-container">
|
||||||
|
<div class="search-input">
|
||||||
|
<span id="esc-search"> <i class="icon-fanhui iconfont"></i></span>
|
||||||
|
<input id="search-input">
|
||||||
|
<span id="begin-search">search</span>
|
||||||
|
</div>
|
||||||
|
<div class="search-result-container" id="search-result-container">
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="index-about-mobile">
|
||||||
|
<i> </i>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="index-middle">
|
||||||
|
<!-- Main Content -->
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<footer class="footer">
|
||||||
|
<ul class="list-inline text-center">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
// We expose some of the variables needed by the front end
|
||||||
|
window.hexo_search_path = ""
|
||||||
|
window.hexo_root = "/uWeb/"
|
||||||
|
window.isPost = false
|
||||||
|
</script>
|
||||||
|
<script src="/uWeb/js/index.js"></script>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</html>
|
@ -0,0 +1,129 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head><meta name="generator" content="Hexo 3.8.0">
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
|
<meta name="google-site-verification" content="xBT4GhYoi5qRD5tr338pgPM5OWHHIDR6mNg1a3euekI">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
<meta name="description" content="">
|
||||||
|
<meta name="keyword" content="">
|
||||||
|
<link rel="shortcut icon" href="/uWeb/img/favicon.ico">
|
||||||
|
|
||||||
|
<title>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</title>
|
||||||
|
|
||||||
|
<!-- Custom CSS -->
|
||||||
|
<link rel="stylesheet" href="/uWeb/css/aircloud.css">
|
||||||
|
<link href="//at.alicdn.com/t/font_620856_pl6z7sid89qkt9.css" rel="stylesheet" type="text/css">
|
||||||
|
<!-- ga & ba script hoook -->
|
||||||
|
<script></script>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<div class="site-nav-toggle" id="site-nav-toggle">
|
||||||
|
<button>
|
||||||
|
<span class="btn-bar"></span>
|
||||||
|
<span class="btn-bar"></span>
|
||||||
|
<span class="btn-bar"></span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="index-about">
|
||||||
|
<i> </i>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="index-container">
|
||||||
|
|
||||||
|
<div class="index-left">
|
||||||
|
|
||||||
|
<div class="nav" id="nav">
|
||||||
|
<div class="contents" id="nav-content">
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<a href="/uWeb/">
|
||||||
|
<i class="iconfont icon-shouye1"></i>
|
||||||
|
<span>HOME</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/uWeb/tags">
|
||||||
|
<i class="iconfont icon-biaoqian1"></i>
|
||||||
|
<span>TAGS</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/uWeb/archives">
|
||||||
|
<i class="iconfont icon-guidang2"></i>
|
||||||
|
<span>ARCHIVES</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="search-field" id="search-field">
|
||||||
|
<div class="search-container">
|
||||||
|
<div class="search-input">
|
||||||
|
<span id="esc-search"> <i class="icon-fanhui iconfont"></i></span>
|
||||||
|
<input id="search-input">
|
||||||
|
<span id="begin-search">search</span>
|
||||||
|
</div>
|
||||||
|
<div class="search-result-container" id="search-result-container">
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="index-about-mobile">
|
||||||
|
<i> </i>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="index-middle">
|
||||||
|
<!-- Main Content -->
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<footer class="footer">
|
||||||
|
<ul class="list-inline text-center">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
// We expose some of the variables needed by the front end
|
||||||
|
window.hexo_search_path = ""
|
||||||
|
window.hexo_root = "/uWeb/"
|
||||||
|
window.isPost = false
|
||||||
|
</script>
|
||||||
|
<script src="/uWeb/js/index.js"></script>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</html>
|
Binary file not shown.
After Width: | Height: | Size: 42 KiB |
Loading…
Reference in New Issue