ifttt

node v10.24.1
version: 1.0.0
endpointsharetweet
const axios = require("axios"); const cheerio = require('cheerio'); var bodyParser = require('body-parser'); const cors = require('cors'); const express = require("@runkit/ego/express-app/1.0.0") const app = express(module.exports); var syncRequest = require('sync-request'); const qs = require('qs'); var mongoose = require('mongoose') //var ress = syncRequest('GET', 'https://channelmyanmar.org/?p=39919').getBody('utf8'); //var xxx = syncRequest('GET', 'https://channelmyanmar.org/wp-json/wp/v2/posts', {json:true}).getBody('utf8') app.set('json spaces', 2); app.use(require('compression')()) app.use(bodyParser.json()); app.use(bodyParser.urlencoded({ extended: false })); // add CORS headers, so the API is available anywhere app.use(function(req, res, next){ res.header("Access-Control-Allow-Origin", "*"); res.header("Access-Control-Expose-Headers", "runkit-rate-limit-remaining"); res.header("Access-Control-Expose-Headers", "tonic-rate-limit-remaining"); var reqHeaders = req.get("Access-Control-Request-Headers") if (reqHeaders) res.header("Access-Control-Allow-Headers", reqHeaders); var reqMethods = req.get("Access-Control-Request-Methods") if (reqMethods) res.header("Access-Control-Allow-Methods", reqMethods); next() }); var Schema = mongoose.Schema const noteSchema = new Schema({ title: String, post: String, type : [], image : String, youtube : String, rate: String, director: String, actors : [], info :[] }); const Note = mongoose.model('Note', noteSchema); var mongoUrl = 'mongodb://ego:password123@ds253017.mlab.com:53017/gcmovie'; mongoose.connect(mongoUrl , { useNewUrlParser: true , useUnifiedTopology: true}); // i hate console.log() so i use print() function print ( l ) { return console.log(l); }; function buildTitle(input) { return input.replace(/[^\w\s]|[0-9]/gi, ''); }; const fetchData = async () => { const result = await axios.get(siteUrl); return cheerio.load(result.data); }; // const fetchCm = async () => { const result = await axios.get('https://channelmyanmar.org/movies'); return cheerio.load(result.data); }; const fetchUrl = async (furl) => { const result = await axios.get(furl); return cheerio.load(result.data); };
let name = ""; let currentPage = ""; let totalpages = ""; const siteTitle = ""; const post = new Set(); const getData = async () => { const $ = await fetchCm(); name = $('title').text(); currentPage = $('.paginado ul li').find('.current').text(); totalpages = $('.paginado ul li').last().children().attr('href'); //.children().children().last().children().attr('href'); //$("previouspostslink'").text(); $(".item_1.items .item").each(function(i, elem) { var title = $(this).find(".fixyear h2").text(); var _url = 'https://untitled-2ab11zhho9vz.runkit.sh/api?url='+$(this).children('a').attr('href'); var movieLink = _url.replace('https://channelmyanmar.org/',''); var _data = { title: $(this).find(".fixyear h2").text(), url : _url, year : $(this).find(".year").text(), img : $(this).find('a .image img').attr('src') } post.add(_data) }); return { name , totalpages, currentPage, posts : [...post], }; print( name); print(totalpages); print(posts); print(currentPage); }; const result = await getData(); // exports.endpoint = async function(request, response) { // const _endpoint = await getData(); // response.end(_endpoint); // };
app.get("/", async (req, res) => { var url = req.query.url; const result = await getData(); //let title = $('title').text(); res.send(result); }); app.get("/api", async (req, res) => { var movie = {title:'', type:'',image:'', rate:'',content:'', detail:'',youtube:'',director:'',actors:'',info:[],relative:[]}; var url = req.query.url; const $ = await fetchUrl(url); movie.image = $('.sbox .imagen .fix').children('img').attr('src') movie.title = $('.sbox .data h1').text(); movie.type = $('.sbox .data .meta .limpiar').text() movie.rate = $('.imdb_r .a span').text() movie.content = $('.sbox #cap1 p').text().trim() movie.youtube = $("[itemprop='embedUrl']").attr('content'); movie.director = $('.sbox #cap3 h3:contains(" Director")').next().text() movie.actors = $("#single [itemprop='actors']").map(function(i, el) { return $(this).children('meta').attr('content'); }).get().join(' ,'); $('.enlaces .elemento a').filter(function() { var dl = $(this).attr('href'), size=$(this).find('.c').text(); if ( $(this).attr('href')){ movie.info.push({site: domainLink(dl), filesize: size ,download : dl}); return movie.info; } }) $('span.ttps').each(function() { var p = $(this).prev().children().find('img').attr('src'); movie.relative.push({title: $(this).text(), class: p}); return movie.relative; }); var note = new Note({ title : movie.title, post: movie.content, type : movie.type, image: movie.image, youtube: movie.youtube, rate : movie.rate, director: movie.director, actors : movie.actors, info : movie.info }); note.save(function(err,succ) { if (err) { console.log(err); }else{ console.log("success"); console.log(succ); //res.send(succ); } }); res.send(movie); })
// // var headers = { // // 'Content-Type': 'application/json' // // }; // //syncRequest // var dataString = '{"value1":"title","value2":"post","value3":"data"}'; // // var options = { // // url: 'https://maker.ifttt.com/trigger/runkit/with/key/dMLONzpt2o0FR3kQSuzUSX', // // method: 'POST', // // headers: headers, // // body: dataString // // }; // const options = { // method: 'POST', // headers: { 'content-type': 'application/json' }, // data: dataString,//qs.stringify(dataString), // url :'https://maker.ifttt.com/trigger/runkit/with/key/dMLONzpt2o0FR3kQSuzUSX' // }; // axios(options); // // function callback(error, response, body) { // // if (!error && response.statusCode == 200) { // // console.log(body); // // } // // } // var syn = syncRequest('POST', 'https://maker.ifttt.com/trigger/runkit/with/key/dMLONzpt2o0FR3kQSuzUSX', { // headers: {'Content-Type': 'application/json'}, // body : dataString // }); // console.log(syn.getBody('utf8')); // // request(options, callback);
/** const siteUrl = "https://remoteok.io/"; let siteName = ""; const categories = new Set(); const tags = new Set(); const locations = new Set(); const positions = new Set(); const getResults = async () => { const $ = await fetchData(); siteName = $('.top > .action-post-job').text(); $(".tags .tag").each((index, element) => { tags.add($(element).text()); }); $(".location").each((index, element) => { locations.add($(element).text()); }); $("div.nav p").each((index, element) => { categories.add($(element).text()); }); $('.company_and_position [itemprop="title"]') .each((index, element) => { positions.add($(element).text()); }); //Convert to an array so that we can sort the results. return { positions: [...positions].sort(), tags: [...tags].sort(), locations: [...locations].sort(), categories: [...categories].sort(), siteName, }; print(positions); print(tags); print(locations); print(categories); print(siteName); }; const result = await getResults(); //module.exports = getResults; **/
function domainLink (urls){ var url = urls.replace("https://", ""); url = url.split(".")[0]; if(url.includes("soliddrive")){ url = "Solid"; } else if (url.includes("myandrive")){ url = "Myandrive"; } else if (url.includes("yadi")){ url = "Yadi" || url.replace("https:", ""); } else if (url.includes("mirrorace")){ url = "Mirrorace"; } else if (url.includes("fastload")){ url = "Fastload"; } else if (url.includes("megaup")){ url = "MegaUp"; } else if (url.includes("mega")){ url = "Mega"; }; return url; }; //megaup
// var request = require('request'); // var headers = { // 'Content-Type': 'application/json' // }; // var dataString = '{"value1":"this is title","value2":"ok","value3":"post by ego"}'; // var options = { // url: 'https://maker.ifttt.com/trigger/runkit/with/key/dMLONzpt2o0FR3kQSuzUSX', // method: 'POST', // headers: headers, // body: dataString // }; // function callback(error, response, body) { // if (!error && response.statusCode == 200) { // console.log(body); // } // } // request(options, callback);
Loading…

no comments

    sign in to comment