如何将网页上的所有可见文本作为大而未分离的字符串返回?
问题描述:
我正在寻找一个简单的脚本,基本上可以完成等同于在网页上按Ctrl + A(全选)的用户,然后将文本复制到剪贴板,以便从那里将它拉入字符串中。如何将网页上的所有可见文本作为大而未分离的字符串返回?
我想模拟用户选择全部然后复制和粘贴的原因是因为某些页面是使用Javascript生成的,并且没有HTML中的可见文本。
在任何情况下,我只是寻找原始未解析的文本。我不在乎是否将间距/换行符搞乱了,等等。我只是想将页面上所有可选文本的快速和脏快照变成一个字符串。
我曾尝试做以下,例如:
private void button3_Click(object sender, EventArgs e)
{
HAP.HtmlWeb web = new HAP.HtmlWeb();
HtmlAgilityPack.HtmlDocument doc = web.
Load(@"https://mywebsite");
string str = doc.DocumentNode.InnerText;
MessageBox.Show(str);
}
但如果页面有JavaScript的不返回通过它显示的文本。
答
而不是
doc.DocumentNode.InnerText;
使用此
doc.DocumentNode.InnerHtml;
这将让你整个HTML包括JS和CSS。希望能帮助到你。
答
使用jQuery:$(document).text()
或$('body').text()
分享你的代码到目前为止你已经实现了。 –
我刚刚在上面做了 –