使用 urllib 删除 python 中的换行符

2023-12-05

我正在使用Python 3.x。使用时urllib.request要下载网页,我得到了很多\n之间。我正在尝试使用论坛其他线程中给出的方法删除它,但我无法这样做。我用过strip()函数和replace()功能...但没有运气!我在 eclipse 上运行这段代码。这是我的代码:

import urllib.request

#Downloading entire Web Document 
def download_page(a):
    opener = urllib.request.FancyURLopener({})
    try:
        open_url = opener.open(a)
        page = str(open_url.read())
        return page
    except:
        return""  
raw_html = download_page("http://www.zseries.in")
print("Raw HTML = " + raw_html)

#Remove line breaks
raw_html2 = raw_html.replace('\n', '')
print("Raw HTML2 = " + raw_html2)

我无法找出获得大量的原因\n in the raw_html多变的。


Your download_page()函数破坏了 html (str()打电话)这就是为什么你会看到\n(两个字符\ and n)在输出中。不要使用.replace()或其他类似的解决方案,修复download_page()函数代替:

from urllib.request import urlopen

with urlopen("http://www.zseries.in") as response:
    html_content = response.read()

在此刻html_content包含一个bytes目的。要将其作为文本获取,您需要知道其字符编码,例如,从Content-Typehttp标头:

encoding = response.headers.get_content_charset('utf-8')
html_text = html_content.decode(encoding)

See 在 Python 中获取 HTTP 响应的字符集/编码的好方法.

如果服务器没有传入字符集Content-Type标题然后有计算 html5 文档中字符编码的复杂规则例如,它可以在 html 文档中指定:<meta charset="utf-8">(你需要一个 html 解析器来获取它)。

如果你正确地阅读了 html 那么你不应该看到文字字符\n在页面中。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 urllib 删除 python 中的换行符 的相关文章

随机推荐

  • 通过参考返回

    PHP 文档中写道 不要使用按引用返回来提高性能 引擎 会自动对其进行优化 我希望返回对数组的引用 这是我的类的属性 PHP 如何优化这个 因为数组不是对象 如果数组有10亿个条目 如果我不通过引用传递它 我不会得到两个在内存中存储有10亿
  • MySQL SUM 函数在多个连接中

    嗨 这是我的情况 我有那些桌子 Customer id name Charges id amount customer id Taxes id amount charge id 所以我想计算费用和税费的总和 然后按客户 ID 分组 这是我的
  • EL 空运算符在 JSF 中如何工作?

    在 JSF 中 可以使用 EL 空运算符来呈现或不呈现组件 rendered not empty myBean myList 据我了解 该运算符既可以用作空检查 也可以检查列表是否为空 我想对我自己的自定义类的某些对象进行空检查 我需要实现
  • 访问共享内存进行读取时锁定

    如果我以只读方式访问共享内存 请检查某个条件if 块 我还应该锁定互斥锁吗 例如 mutex lock if var shared memory mutex unlock 这里是否需要锁定并且是良好的做法 如果您正在读取的变量可以同时写入
  • 如何使用 Matlab 按字母顺序对属性值对进行排序

    我想向现有文件添加属性值对 同时 所有属性应按字母顺序排序 例如 Info property 1 value 1 system property 2 value 2 我如何添加其他属性 以便所有属性都按字母顺序排序 我能够使用以下命令将属性
  • 使用 HTML5 音频更改 在 Chrome 中有效,但在 Safari 中无效

    我正在尝试制作一个可在每个主要浏览器中使用的 HTML5 音频播放列表 Chrome Safari Firefox IE9 但是 我不知道如何以跨浏览器兼容的方式更改源 UPDATED例如 更改
  • 迭代器无法正确访问问题

    我正在尝试使用迭代器访问向量的元素 但我得到奇怪的输出 std vector
  • Excel VBA 循环遍历可见的筛选行

    我有一个带有自动过滤器的 Excel 表格 在过滤表中 我只过滤了几行 我的目标是迭代所有可见行以收集数据以复制到另一张工作表 我想要一种方法来收集具有第一个可见行号的变量 我的草稿代码是 Dim cnp As String Dim nom
  • 我们是否应该在 React 功能组件的每个函数处理程序中使用 useCallback

    假设我们有这样的组件 const Example gt const counter setCounter useState 0 const increment gt setCounter counter gt counter 1 retur
  • 使用具有 PhoneStateListener 功能的 BroadcastReceiver

    我正在尝试制作一个 MissCall 应用程序 当收到未接来电时 该应用程序会自动发送消息 我已经完成了我的应用程序并且运行良好 这是完整的场景 问题 该应用程序运行良好但是当我重新启动设备时 应用程序无法运行 它仅在我启动我的应用程序至少
  • 是否可以将占位符文本从头到尾转换?

    我想在已知宽度的文本输入中从头到尾转换单行动态占位符文本 隐藏溢出 现在我知道对于常规容器 div 我可以利用转换来转换正确的长度 因此 对于长度为 100px 的容器 我可以使用以下命令过渡到文本末尾 transform translat
  • Swift 2 - 将数组分成带有从 A 到 Z 的键的字典

    例如 我有一个数组 Apple Banana Blueberry Eggplant 我想将其转换为字典 如下所示 A Apple B Banana Blueberry C D E Eggplant 我在 Xcode 7 beta 4 上使用
  • ArrayList并发访问

    我知道ArrayList不是线程安全的 但我不确定这的确切含义 如果是ThreadA and ThreadB两者都使用ArrayList 哪些情况会导致问题并需要同步 两个线程同时读取相同的索引 ThreadA替换一个元素ThreadB正在
  • 如何将 plone 的内容块插入到重氮主题中

    我在 Plone 4 1 中使用重氮 当前为 plone app theming 1 0b1 r48205 我想完全使用 Plone 的 html 作为搜索小部件 除了我想替换
  • 当函数返回由模板类型和另一个类型组成的类型时,模板参数推导

    标题很难用文字表达 但这是我试图在不可编译的代码中实现的目标 template
  • 如何在服务器上设置 SvelteKit 存储并保持反应性?

    我正在尝试构建一台使用 setInterval 回调更改服务器上数据的机器 在理想的情况下 服务器间歇性地检查数据并将其保存在缓存中 前端组件使用该缓存将其呈现在浏览器中 现在我的 server ts 文件says它会定期更改数据并将其添加
  • 使用 Gluon ShareService 共享多个文件(图像和 txt)

    我们想知道如何使用 Gluon ShareService 共享多个文件 图像和 txt 文件 特别是如何与 PictureService 共享先前拍摄并存储 在图库中 的图像 但我们需要先创建一个包含路径和图像名称的文件 不幸的是 Pict
  • 如何关闭由邮件合并启动的 Excel 实例

    如何关闭由邮件合并启动的 Excel 实例 在启动器内运行的此代码无法访问通过 DDE 运行的 Excel For i 1 To Workbooks Count MsgBox here Workbooks i Name If Workboo
  • 为什么父类的受保护变量为空?

    我有一个受保护的变量Father类中 该变量的内容将发生变化Father类 但我需要在子类中使用这个变量 即 class Father protected body function construct this gt body test
  • 使用 urllib 删除 python 中的换行符

    我正在使用Python 3 x 使用时urllib request要下载网页 我得到了很多 n之间 我正在尝试使用论坛其他线程中给出的方法删除它 但我无法这样做 我用过strip 函数和replace 功能 但没有运气 我在 eclipse