last day (15 days later) » 

17:12
3
A: List of all Salesforce Implmentations guides

Adrian LarsonIf you visit the top level Developer Documentation, its "Browse Documentation" section has what looks to be a complete list. A Guide to Sharing Architecture AJAX Toolkit Developer Guide Actions Developer Guide Analytics Bindings Developer Guide Analytics Dashboard Component Developer Guide Analy...

Copying them over to preserve a current snapshot. Will take a bit of time.
Especially since the markup makes it quite awkward to copy the titles. They went really far out of their way to make this information difficult to scrape.
that link works for my purposes AL.... if you're doing a copy / paste or screen grab, might make sense to get the write up in the tiles too
I can add that to my scrape if I can get one working.
if you send me the gist / repo i can try to help with it btw meetings
I'm trying to use the approach recommended at the bottom of this article
There was one typo (shadowRoot instead of el.shadowRoot), but it's still just wiping out everything for me.
Fixed up generic version (still not working):

const getShadowDomHtml = (shadowRoot) => {
let shadowHTML = '';
for (let element of shadowRoot.childNodes) {
shadowHTML += element .nodeValue || element.outerHTML;
}
return shadowHTML;
};
const replaceShadowDomsWithHtml = (rootElement) => {
for (let element of rootElement.querySelectorAll('*')) {
if (element.shadowRoot) {
replaceShadowDomsWithHtml(element.shadowRoot);
element.innerHTML += getShadowDomHtml(element.shadowRoot);
}
}
};
replaceShadowDomsWithHtml(document.body);GEN
17:16
K. Let me take a look bre meetings
btw*
17:58
Tailored version (in progress):

let grid, cards;
grid = document.querySelector('dx-section[title="Browse Documentation"] dw-docs-grid').shadowRoot.childNodes[0];
cards = grid.querySelector("dx-grid").childNodes;
const readCard = (card) => {
const anchor = card.shadowRoot.childNodes[0];
const title = anchor.querySelector("dx-card-title").shadowRoot.textContent;
const description = anchor.text;
const href = anchor.href;
return ` - **[${title}](${href})** \n ${description}`
}
console.log(Array.from(cards).reduce((output, card) => output + "\n" + readCard(card), ""));
18:25
Since Chrome collapses the requisite double space to end a line, had to further massage the output in Python.
Subsequent pages:
grid = document.querySelector('dx-section[title="Browse Documentation"] dw-docs-grid').shadowRoot.childNodes[0];
cards = grid.querySelector("dx-grid").childNodes;
console.log(Array.from(cards).reduce((output, card) => output + "\n" + readCard(card), ""));
The post body is too long to include both links and descriptions in one, so I'll split it.
 
1 hour later…
19:43
welp. looks like you got it

last day (15 days later) »