Skip to content

Instantly share code, notes, and snippets.

View Xyborg's full-sized avatar
🐍
Python for SEO

Martín Aberastegue Xyborg

🐍
Python for SEO
View GitHub Profile
/***********************************************************************************
* @name: Google Shopping Pure Brand Campaigns - Negative Keywords List Generator
* @version: 1.3
* @author: Martin Aberastegue (https://www.linkedin.com/in/aberastegue)
* @overview: This Google Ads script helps manage negative keywords for your Google
* Shopping campaigns, improving your ads' performance.
*
* 2. It begins by reading your configurations: a list of branded keywords, the
* name of your negative keyword list, the negative match type (either 'BROAD',
* 'EXACT', or 'PHRASE'), the time range for considering search queries
/******************************************
* Search Terms With Conversions
* @version: 1.2
* @author: Geert Groot (https://www.linkedin.com/in/geertgroot/)
* Martin Aberastegue (https://www.linkedin.com/in/aberastegue)
* -------------------------------
* This Google Ads script identifies unique, conversion-driving search terms
* from the predefined past days. It eliminates duplicates, tracks total conversions
* per search term, and compares them against existing account keywords.
* The findings are emailed to a recipient and logged in a Google Spreadsheet,
@Xyborg
Xyborg / Google RSA Report
Created April 18, 2023 13:57 — forked from siliconvallaeys/Google RSA Report
Generate a Google sheet with RSAs from your account and make it easier to find RSAs that don't use the maximum allowable number of headlines and descriptions.
/******************************************
* RSA Report
* @version: 1.0
* @author: Naman Jindal (Optmyzr)
* -------------------------------
* This script can be used to find responsive search ads
* that don't have the desired minimum number of headlines
* and descriptions.
*
* Optmyzr subscribers can use the Ad Text Optimization (RSA) tool
javascript:const elements = document.getElementsByClassName("limit-overlay");while(elements.length > 0){elements[0].parentNode.removeChild(elements[0]);}
Option Explicit
Private Const clOneMask = 16515072 '000000 111111 111111 111111
Private Const clTwoMask = 258048 '111111 000000 111111 111111
Private Const clThreeMask = 4032 '111111 111111 000000 111111
Private Const clFourMask = 63 '111111 111111 111111 000000
Private Const clHighMask = 16711680 '11111111 00000000 00000000
Private Const clMidMask = 65280 '00000000 11111111 00000000
Private Const clLowMask = 255 '00000000 00000000 11111111
@Xyborg
Xyborg / view-don.js
Created May 11, 2020 04:37
A simple JS to view the DOM for the current window.
javascript:var win = window.open("", "Dom Viewer by @Xyborg", "toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width=1000,height=700,top=50,left=20");win.document.body.appendChild(document.createTextNode(document.getElementsByTagName('html')[0].innerHTML));
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><!-- start coded_template: id:24905379074 path:generated_layouts/24905379072.html --><html xmlns="http://www.w3.org/1999/xhtml" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office"><head>
<title></title>
<meta property="og:title" content="">
<meta name="twitter:title" content="">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type="text/css" id="hs-inline-css">
/*<![CDATA[*/
/* everything in this node will be inlined */
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><!-- start coded_template: id:14955003098 path:generated_layouts/14955003097.html --><html xmlns="http://www.w3.org/1999/xhtml" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office"><head>
<title></title>
<meta property="og:title" content="">
<meta name="twitter:title" content="">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type="text/css" id="hs-inline-css">
/*<![CDATA[*/
/* everything in this node will be inlined */
@Xyborg
Xyborg / RDC EML.html
Created December 19, 2019 13:48
RDC EML.html
<DIV><IMG style="BORDER-LEFT-WIDTH: 0px !important; TEXT-DECORATION: none; HEIGHT: 1px !important; BORDER-RIGHT-WIDTH: 0px !important; WIDTH: 1px !important; BORDER-BOTTOM-WIDTH: 0px !important; PADDING-BOTTOM: 0px !important; PADDING-TOP: 0px !important; OUTLINE-STYLE: none; PADDING-LEFT: 0px !important; DISPLAY: block; PADDING-RIGHT: 0px !important; BORDER-TOP-WIDTH: 0px !important" border=0 alt="" src="http://open.mailnaranja.com.ar/op/open-%%c-ltm_codigo%%-%%c-ltm_tipo%%.gif" width=1 height=1></DIV>
<TABLE cellSpacing=0 cellPadding=0 width="100%" align=center border=0>
<TR>
<TD align=center><TABLE style="WIDTH: 602px" cellSpacing=0 cellPadding=0 width=602 align=center border=0>
<TR>
<TD style="WIDTH: 602px"><TABLE class=main-table style="WIDTH: 602px; TABLE-LAYOUT: fixed; MARGIN: auto" cellSpacing=0 cellPadding=0 width=602 align=center border=0>
<TR>
<TD><TABLE cellSpacing=0 cellPadding=0 width="100%" align=center border=0>
<TR>
<style type="text/css">abtasty-modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:2147483145}abtasty-modal:not(.abtasty-modal--video){overflow-y:auto}abtasty-modal__underlay{width:100%;height:100%;position:fixed;top:0;left:0;background-color:rgba(0,0,0,.5);cursor:pointer}.abtasty-modal__area{top:0;left:0;right:0;width:auto;margin:10px!important;z-index:100;position:relative;float:none}.abtasty-modal__area-layout--imageOnly{max-width:80%}.abtasty-modal__area-layout--imageOnly img{border-style:solid;-webkit-box-sizing:border-box;box-sizing:border-box;max-width:100%;opacity:1}.abtasty-modal__area-type--video.abtasty-modal__area-layout--no-title .abtasty-modal__content{padding:5px;border-radius:0!important;border-width:0!important;background-color:transparent!important;background-image:none!important}.abtasty-modal__area-type--video.abtasty-modal__area-layout--bottom .abtasty-modal__content{padding:25px 20px 20px}.abtasty-modal .abtasty-modal__content{border-color:#f6f6f6;border-style:solid;padding: