Skip to content

Instantly share code, notes, and snippets.

Avatar

Zero Bugs zerobugs-oficial

View GitHub Profile
@zerobugs-oficial
zerobugs-oficial / captcha_tradicional.js
Created Nov 23, 2020
Script que quebra captchas tradicionais (imagem com letras e números) usando a API do 2captcha.com e o Node.js
View captcha_tradicional.js
const request = require('request');
const fs = require('fs');
const puppeteer = require('puppeteer');
const API_KEY = "SUA_API_KEY_DO_2captcha";
async function curl(options) {
return new Promise((resolve, reject) => {
request(options, (err, res, body) => {
if(err)
@zerobugs-oficial
zerobugs-oficial / recaptcha_v2.js
Last active May 24, 2021
Robô que quebra captchas Recaptcha V2 usando Node.js, 2captcha.com e o Pupppeteer
View recaptcha_v2.js
const request = require('request');
const puppeteer = require('puppeteer');
const API_KEY = "SUA_API_KEY_NO_2captcha"
async function curl(options) {
return new Promise((resolve, reject) => {
request(options, (err, res, body) => {
if(err)
return reject(err);
@zerobugs-oficial
zerobugs-oficial / copiar-clonar-site-com-nodejs-javascript.js
Created Nov 18, 2020
Esse script utiliza os pacotes website-scraper e website-scraper-puppeteer do NPM para baixar uma cópia de um site para o seu computador, assim como seus CSS e JS.
View copiar-clonar-site-com-nodejs-javascript.js
const scrape = require('website-scraper');
const PuppeteerPlugin = require('website-scraper-puppeteer');
const path = require('path');
scrape({
// Forneça a URL do site que você quer copiar
urls: ['https://site-que-voce-quer-copiar.com.br'],
// Especifique a pasta onde os arquivos do site serão salvos em pasta-do-site
directory: path.resolve(__dirname, 'pasta-do-site'),
@zerobugs-oficial
zerobugs-oficial / converter_data_americana.js
Created Nov 5, 2020
Converter data no padrão americano para o brasileiro usando Javascript
View converter_data_americana.js
let data_americana = "2020-12-30";
let data_brasileira = data_americana.split('-').reverse().join('/');
// Pronto! A data foi convertida.
console.log(data_brasileira); // retorna: 30/12/2020
@zerobugs-oficial
zerobugs-oficial / calcular.php
Created Jul 8, 2020
Sistema de cálculo de fretes utilizando a API dos correios, PHP, HTML e Javascript.
View calcular.php
<?php
$variaveis_extras = http_build_query($_POST);
$url = "http://ws.correios.com.br/calculador/CalcPrecoPrazo.aspx?nCdEmpresa=&sDsSenha=&sCdAvisoRecebimento=n&sCdMaoPropria=n&nVlValorDeclarado=0&nVlDiametro=0&StrRetorno=xml&nIndicaCalculo=3&nCdFormato=1&" . $variaveis_extras;
$unparsedResult = file_get_contents($url);
$parsedResult = simplexml_load_string($unparsedResult);
$retorno = array(
'preco' => strval($parsedResult->cServico->Valor),
@zerobugs-oficial
zerobugs-oficial / alterar_link_retornar_para_a_loja.php
Last active Jun 28, 2020
Com esse trecho de código você poderá muda o link do botão Retornar para a Loja e enviar os usuários que acessarem o carrinho vazio da sua loja WooCommerce para um link diferente do padrão, como a página inicial por exemplo.
View alterar_link_retornar_para_a_loja.php
@zerobugs-oficial
zerobugs-oficial / remover_acentos_javascript.js
Created Jun 24, 2020
Função para remover acentos de uma string usando Javascript
View remover_acentos_javascript.js
// créditos: http://semplicewebsites.com/removing-accents-javascript
function removerAcentos(str) {
let base64map="eyLDgSI6IkEiLCLEgiI6IkEiLCLhuq4iOiJBIiwi4bq2IjoiQSIsIuG6sCI6IkEiLCLhurIiOiJBIiwi4bq0IjoiQSIsIseNIjoiQSIsIsOCIjoiQSIsIuG6pCI6IkEiLCLhuqwiOiJBIiwi4bqmIjoiQSIsIuG6qCI6IkEiLCLhuqoiOiJBIiwiw4QiOiJBIiwix54iOiJBIiwiyKYiOiJBIiwix6AiOiJBIiwi4bqgIjoiQSIsIsiAIjoiQSIsIsOAIjoiQSIsIuG6oiI6IkEiLCLIgiI6IkEiLCLEgCI6IkEiLCLEhCI6IkEiLCLDhSI6IkEiLCLHuiI6IkEiLCLhuIAiOiJBIiwiyLoiOiJBIiwiw4MiOiJBIiwi6pyyIjoiQUEiLCLDhiI6IkFFIiwix7wiOiJBRSIsIseiIjoiQUUiLCLqnLQiOiJBTyIsIuqctiI6IkFVIiwi6py4IjoiQVYiLCLqnLoiOiJBViIsIuqcvCI6IkFZIiwi4biCIjoiQiIsIuG4hCI6IkIiLCLGgSI6IkIiLCLhuIYiOiJCIiwiyYMiOiJCIiwixoIiOiJCIiwixIYiOiJDIiwixIwiOiJDIiwiw4ciOiJDIiwi4biIIjoiQyIsIsSIIjoiQyIsIsSKIjoiQyIsIsaHIjoiQyIsIsi7IjoiQyIsIsSOIjoiRCIsIuG4kCI6IkQiLCLhuJIiOiJEIiwi4biKIjoiRCIsIuG4jCI6IkQiLCLGiiI6IkQiLCLhuI4iOiJEIiwix7IiOiJEIiwix4UiOiJEIiwixJAiOiJEIiwixosiOiJEIiwix7EiOiJEWiIsIseEIjoiRFoiLCLDiSI6IkUiLCLElCI6IkUiLCLEmiI6IkUiLCLIqCI6IkUiLCLhuJwiOiJFIiwi
@zerobugs-oficial
zerobugs-oficial / Listar Arquivos de Forma Sincrona.js
Created Jun 23, 2020
Esse script lista todos os arquivos presentes em um diretório, incluindo os que estão dentro de subdiretórios
View Listar Arquivos de Forma Sincrona.js
const fs = require('fs');
function listarArquivosEPastasDeUmDiretorio(diretorio, arquivos) {
if(!arquivos)
arquivos = [];
let listaDeArquivos = fs.readdirSync(diretorio);
for(let k in listaDeArquivos) {
let stat = fs.statSync(diretorio + '/' + listaDeArquivos[k]);
@zerobugs-oficial
zerobugs-oficial / select2_example.html
Created Jun 23, 2020
Exemplo de implementação simples do select2 para uma caixa selectora dos estados do Brasil
View select2_example.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<link href="https://cdn.jsdelivr.net/npm/select2@4.1.0-beta.1/dist/css/select2.min.css" rel="stylesheet" />
<script src="https://code.jquery.com/jquery-3.5.1.min.js" integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0=" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/select2@4.1.0-beta.1/dist/js/select2.min.js"></script>
</head>
@zerobugs-oficial
zerobugs-oficial / listar_arquivos_node_async.js
Created Jun 22, 2020
Listar arquivos dentro de um diretório/subdiretórios - Node.js async/await
View listar_arquivos_node_async.js
const fs = require('fs').promises;
async function listarArquivosDoDiretorio(diretorio, arquivos) {
if(!arquivos)
arquivos = [];
let listaDeArquivos = await fs.readdir(diretorio);
for(let k in listaDeArquivos) {
let stat = await fs.stat(diretorio + '/' + listaDeArquivos[k]);