用 Chrome 的开发者工具获取页面表格中某列的数据
有时会有从网页上的表格获取数据进行分析的需求,比如:

因为数据混杂在 HTML 里,没有 API,想要获取第二列的 rrname 就比较麻烦。
常规思路是 lxml 或者 BeautifulSoup 之类的库解析 HTML 从中提取数据,当然正则就算了…
不过对于这种简单的需求,其实有个很方便的办法。
Chrome 的 DevTools 自带获取元素 XPath 的功能,在 Elements 里右键单击目标元素,点 Copy - Copy XPath 就行。
然后在 Console 里用 $x() 函数就可以根据 XPath 定位元素了。
但有点坑的是这里的 td 里还有 ul:
所以若是用 $x('/html/body/table/tbody/tr/td[2]') 的话,它的 innerText 会包含 ul 里的值。如图,多了 ul 里的 S D:

查看 XPath 的语法,发现用 node() 可以匹配任意节点:

于是用 $x('/html/body/table/tbody/tr/td[2]/node()[1]') 就能获取到期望的 rrname 了:

把 rrname 放进 domains 数组里:
var domains = [];
$x('/html/body/table/tbody/tr/td[2]/node()[1]').forEach(function(e){domains.push(e.data)})

然后复制到系统剪贴板:
copy(domains.join(''))
也可以用 Scrapy 写个爬虫,以后遇到这种需求改改需要爬取的 URL 就行。
另外 Burp Suite 的 Intruder 有个 Grep - Extract 的选项, 可视化正则还是蛮好用的。