我用python打开一个网页 并且打印 前面有个b是怎么回事?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我用python打开一个网页 并且打印 前面有个b是怎么回事?相关的知识,希望对你有一定的参考价值。
就是用a=urllib.request.urlopen("...")打开一个网页 然后print(a) 前面总有一个b是怎么回事?
因为你用的python的版本是3.X,网页内容是二进制的,你需要进行decode, 一般中文的网页编码是GBK或UTF8.这样就可以了a=urllib.request.urlopen("...").decode("utf8")或a=urllib.request.urlopen("...").decode("gbk") 参考技术A 你应该用a=urllib.urlopen("...")
a.read(),我用你的代码都没有返回,直接报错了 参考技术B Solution 1:
use `requests` instead of `urllib`
Solution 2:
print(a.decode()) 参考技术C 少了一个.read()
也就是:a = urllib.request.urlopen("...").read().decode('utf8')
这样就可以正常输出,不乱码了 参考技术D 出现b因为网页是utf-8编码的,你需要用utf-8解码才能得到最正确的格式
试试这样
import urllib.request
a=urllib.request.urlopen('http://xxxxxxx').read().decode('UTF-8','strict') #后面decode是py3中的解码
print (a)
怎么让 dom4j 添加的节点 在最前面``而不是最后面吗~
比如现在有个xml
<?xml version="1.0" encoding="UTF-8"?>
<books>
<s>ss</s>
<s>ss</s>
</books>
然后我用这段代码添加一个节点<test></test>
Document document = saxReader.read(new File("d:/text.xml"));
Element root = document.getRootElement();
Element test = root.addElement("test");
xml文件变成了
<?xml version="1.0" encoding="UTF-8"?>
<books>
<s>ss</s>
<s>ss</s>
<test></test></books>
它是添加到了最后```请问如何添加在最开始
Document document = saxReader.read(new File("d:/text.xml"));
Element root = document.getRootElement();
List list = root.content();
Element e = DocumentHelper.createElement("test");
list.add(0, e);
FileWriter fw = new FileWriter(new File("d:/text.xml"));
XMLWriter output = new XMLWriter(fw);
output.write(document);
output.close();
以上是关于我用python打开一个网页 并且打印 前面有个b是怎么回事?的主要内容,如果未能解决你的问题,请参考以下文章
怎么让 dom4j 添加的节点 在最前面``而不是最后面吗~