Skip to content

Instantly share code, notes, and snippets.

@powerwlsl
Created July 12, 2023 02:31
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save powerwlsl/130bae692f353629d685ee2b0fa1b034 to your computer and use it in GitHub Desktop.
Save powerwlsl/130bae692f353629d685ee2b0fa1b034 to your computer and use it in GitHub Desktop.
var destinationGoogleSheetURL = 'https://docs.google.com/spreadsheets/d/1NCeCkHuALcyV_yKvW9KqCJUA3AIVanEr1MzjY0HXVoY/edit#gid=0';
var pageLimit = document.querySelector('#m_lblPagingSummary > b:nth-child(3)').innerText;
pageLimit = parseInt(pageLimit);
for (var i = 1; i <= pageLimit; i++) {
setTimeout(function () {
var listingAddress = document.querySelectorAll("td.d128m16 .formula.field.d128m15")[0].innerText || 'unknown';
var listingLP = document.querySelector('tr.d128m13 td.d128m11').innerText || 'unknown';
var listingOLP = document.querySelectorAll('td.d128m11')[2].innerText || 'unknown';
var listingDescription = document.querySelectorAll('tr.d139m6')[0].querySelector('td.d139m4').innerText || 'unknown';
var listingAgentAddress = document.querySelectorAll('tr.d141m10')[0].querySelector('td.d141m4').innerText || 'unknown';
var listingOfficeName = listingAgentAddress.split(/[\(\)]/)[0].trim() || 'unknown';
var listingOfficeNumber = listingAgentAddress.split(/[\(\)]/)[1].trim() || 'unknown';
var listingOfficePhoneNumber = listingAgentAddress.split(/[\(\)]/)[2].trim() || 'unknown';
var listingOfficeAddress = document.querySelectorAll('tr.d141m10')[1].querySelector('td.d141m4').innerText || 'unknown';
var listingAgentInfo = document.querySelectorAll('tr.d141m10')[2].querySelector('td.d141m4').innerText || 'unknown';
var listingAgentName = listingAgentInfo.split(/[\(\)]/)[0].trim() || 'unknown';
var listingAgentFirstName = listingAgentName.split(" ")[0] || 'unknown';
var listingAgentLastName = listingAgentName.split(" ")[1] || 'unknown';
var listingAgentLicenseNumber = listingAgentInfo.split(/[\(\)]/)[1].trim() || 'unknown';
var listingAgentPhoneNumber = listingAgentInfo.split(/[\(\)]/)[2].trim() || 'unknown';
var listingAgentEmail = document.querySelectorAll('tr.d141m10')[3].querySelector('td.d141m4').innerText || 'unknown';
var listingAgentLACell = document.querySelectorAll('tr.d141m10 td.d141m6')[1].querySelector('span').innerText || 'unknown';
var listingAgentLACell2 = document.querySelectorAll('tr.d141m10 td.d141m6')[2].querySelector('span').innerText || 'unknown';
var buyingAgentInfo = document.querySelector('[data-original-title="To Sell Agent"]').closest('span').innerText.split(/[\(\)]/);
var buyingAgentName = buyingAgentInfo[0].trim() || 'unknown';
var buyingAgentFirstName = buyingAgentName.split(" ")[0] || 'unknown';
var buyingAgentLastName = buyingAgentName.split(" ")[1] || 'unknown';
var buyingAgentLicenseNumber = buyingAgentInfo[1].trim() || 'unknown';
var buyingAgentPhoneNumber = buyingAgentInfo[2].trim() || 'unknown';
var buyingAgentEmail = document.querySelector('span.formula.field.d145m14').querySelector('a').innerText || 'unknown';
var soldInfo = Array.from(document.querySelectorAll('span.formula.label strong')).filter(header => header.innerText.includes("Contract Date"))[0].closest('tr')
var closePrice = soldInfo.querySelector('.d146m9').querySelector('span').innerText || 'unknown';
var buyerFinancing = Array.from(document.querySelectorAll('.DisplayRow.d145m0 .d145m9')).filter(header => header.innerText.includes("Buyer Financing"))[0].querySelector('.wrapped-field').innerText || 'unknown';
var contractDate = soldInfo.querySelector('.d146m4').innerText || 'unknown';
var closeDate = soldInfo.querySelector('.d146m7').innerText || 'unknown';
console.log(`listingAddress ${listingAddress}`)
console.log(`listingLP ${listingLP}`)
console.log(`listingOLP ${listingOLP}`)
console.log(`listingDescription ${listingDescription}`)
console.log(`listingOfficeName ${listingOfficeName}`)
console.log(`listingOfficeNumber ${listingOfficeNumber}`)
console.log(`listingOfficePhoneNumber ${listingOfficePhoneNumber}`)
console.log(`listingOfficeAddress ${listingOfficeAddress}`)
console.log(`listingAgentName ${listingAgentName}`)
console.log(`listingAgentFirstName ${listingAgentFirstName}`)
console.log(`listingAgentLastName ${listingAgentLastName}`)
console.log(`listingAgentLicenseNumber ${listingAgentLicenseNumber}`)
console.log(`listingAgentPhoneNumber ${listingAgentPhoneNumber}`)
console.log(`listingAgentEmail ${listingAgentEmail}`)
console.log(`listingAgentLACell ${listingAgentLACell}`)
console.log(`listingAgentLACell2 ${listingAgentLACell2}`)
console.log(`buyingAgentName ${buyingAgentName}`)
console.log(`buyingAgentFirstName ${buyingAgentFirstName}`)
console.log(`buyingAgentLastName ${buyingAgentLastName}`)
console.log(`buyingAgentLicenseNumber ${buyingAgentLicenseNumber}`)
console.log(`buyingAgentPhoneNumber ${buyingAgentPhoneNumber}`)
console.log(`buyingAgentEmail ${buyingAgentEmail}`)
console.log(`closePrice ${closePrice}`)
console.log(`buyerFinancing ${buyerFinancing}`)
console.log(`contractDate ${contractDate}`)
console.log(`closeDate ${closeDate}`)
console.log('------------------')
google_sheets_add_row(
"1NCeCkHuALcyV_yKvW9KqCJUA3AIVanEr1MzjY0HXVoY",
/*name*/'Sheet1',
[
listingAddress,
listingLP,
listingOLP,
listingDescription,
listingOfficeName,
listingOfficeNumber,
listingOfficePhoneNumber,
listingOfficeAddress,
listingAgentName,
listingAgentFirstName,
listingAgentLastName,
listingAgentLicenseNumber,
listingAgentPhoneNumber,
listingAgentEmail,
listingAgentLACell,
listingAgentLACell2,
buyingAgentName,
buyingAgentFirstName,
buyingAgentLastName,
buyingAgentLicenseNumber,
buyingAgentPhoneNumber,
buyingAgentEmail,
closePrice,
buyerFinancing,
contractDate,
closeDate
]
);
var nextButton = document.querySelector('.pagingLinks a:nth-child(2)');
nextButton.click();
}, i * 3000);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment