python获取html源码中省略文本的内容

问题描述

python获取html源码中省略文本的内容
  • 浏览器打开该网页,页面可以显示完整的文本。
  • 但用Python获取网页源码时,发现源码中只显示文本的前半部分,后面文本用省略号(...)替代了。
 htmlContent = urllib2.urlopen().read().decode('utf-8')

请问用python,要怎么获取完整的文本?

谢谢!

解决方案

网页可能用了ajax等异步技术来显示页面内容
urllib等获取的时候只能取到当时页面内容,可能页面内容还没有加载完成
这种情况需要用selenium等webdriver机制模拟浏览器来获取所有的页面内容

解决方案二:

用fiddler这个软件抓浏览器和服务器的通讯数据,看是什么请求包含了完整的文本。然后用python直接模拟。

时间: 2024-08-30 08:41:02

python获取html源码中省略文本的内容的相关文章

C#怎么把网页源码中相同格式的内容都给提取出来?

问题描述 比如:<pclass="intro">xxx</p><pclass="intro">yyyy</p><pclass="intro">zzzz</p><pclass="intro">wwww</p>,我想把xxx,yyyy,zzzz,wwww都给提取出来改怎么办 解决方案 解决方案二:stringcontent="

求助,python 解析爬取的网页源码中的json部分

问题描述 求助,python 解析爬取的网页源码中的json部分 爬下来的网页源码有一部分是这样的 : 中间那一部分是json吧?要怎么才能解析成像浏览器那样的好继续抓取所要的信息? 说部分是因为有另外一些是正常的html,就中间这一部分想要的信息就这样两行超级长的延伸...也使用过json.load()来解析,不想显示错误"没有可以解析的json对象". 这两行中还有一部分"}u0026nicku003d${nick}u0026rnu003d${rn}u0026stats.

《深入解析Android 虚拟机》——第1章 获取并编译Android源码 1.1获取Android源码

第1章 获取并编译Android源码 在本章中,将详细讲解获取并编译Android源码的基本知识,介绍各个目录中主要文件的功能,为读者步入本书后面知识的学习打下基础. 1.1 获取Android源码 要想研究Android系统的源码,需要先获取其源码.目前市面上主流的操作系统有Windows.Linux.Mac OS的操作系统,由于Mac OS源自于Linux系统,因此本书将讲解分别在Windows系统和Linux系统中获取Android源码的知识. 1.1.1 在Linux系统获取Androi

对象-java源码中一个抽象类初始化方法中包含一个super(),该怎么理解

问题描述 java源码中一个抽象类初始化方法中包含一个super(),该怎么理解 package org.apache.http.params; import java.util.Set; /** * Abstract base class for parameter collections. * Type specific setters and getters are mapped to the abstract, * generic getters and setters. * * @si

《Android 源码设计模式解析与实战》——第2章,第2.7节Android源码中的单例模式

2.7 Android源码中的单例模式在Android系统中,我们经常会通过Context获取系统级别的服务,如WindowsManagerService.ActivityManagerService等,更常用的是一个LayoutInflater的类,这些服务会在合适的时候以单例的形式注册在系统中,在我们需要的时候就通过Context的getSystemService(String name)获取.我们以LayoutInflater为例来说明,平时我们使用LayoutInflater较为常见的地

hashmap-请教HashMap源码中的一些问题

问题描述 请教HashMap源码中的一些问题 final Entry getEntry(Object key) { // 获取哈希值 // HashMap将"key为null"的元素存储在table[0]位置,"key不为null"的则调用hash()计算哈希值 int hash = (key == null) ? 0 : hash(key.hashCode()); // 在"该hash值对应的链表"上查找"键值等于key"的

Android源码中final关键字的用法及final,finally,finalize的区别_Android

hi 大家好,今日,天气剧变,非常冷,不想出门,于是给大家写了篇文章,关于android final关键字及final,finally,finalize的区别相关知识,具体详情如下所示: 先预告一下,下文中仅涉及java语法的讨论,和Android源码关系不大,请不要有阅读压力. 我发现在Android的源码中很多地方对final关键字的用法很是"别出心裁",之所以这么说是因为我从没看过是这么使用final关键字的,一个典型的例子是View类中onScrollChanged方法(不妨将

CIA在恶意程序源码中插入外语,嫁祸中国、俄罗斯等国

昨天,维基解密又公布Vault7系列数百份文件,曝光CIA如何将自己发起的攻击伪装成来自俄罗斯.中国.朝鲜和伊朗等其他国家. 危机解密这一波公布的CIA泄露文件第三弹,名为"Marble",其中包含反取证Marble Framework的676份源码文件,基本上就是用来隐藏CIA恶意程序真实源码的混淆工具--内含各种算法,主旨都是反追踪,用于阻碍取证调查人员和反病毒公司将病毒.木马和黑客攻击行为溯源到CIA身上. 嫁祸给中国.俄罗斯等国? 除了作为混淆工具之用,维基解密认为Marble

《Linux内核修炼之道》——1.3 获取内核源码

1.3 获取内核源码 Linux内核修炼之道内核源码可以通过HTTP和FTP两种方式从http://www.kernel.org获得. 2.6.x以及2.6.x.y位于http://www.kernel.org/pub/linux/kernel/v2.6. -rc内核位于http://www.kernel.org/pub/linux/kernel/v2.6/testing. -git补丁位于http://www.kernel.org/pub/linux/kernel/v2.6/snapshots