替换Python中html文件中的单词

替换Python中html文件中的单词,python,excel,Python,Excel,我试图读取一个HTML文件,并用excel表格中的一个等效单词替换几个单词。 下面是我的代码 import urllib import xlrd workbook = xlrd.open_workbook('polish.xlsx', encoding_override="cp1252") worksheet = workbook.sheet_by_index(0) page = urllib.urlopen("source.html").read() for x in range(0,9

我试图读取一个HTML文件,并用excel表格中的一个等效单词替换几个单词。 下面是我的代码

import urllib
import xlrd


workbook = xlrd.open_workbook('polish.xlsx', encoding_override="cp1252")
worksheet = workbook.sheet_by_index(0)
page = urllib.urlopen("source.html").read()

for x in range(0,96):

 if not type(worksheet.cell(x, 2).value) is float:
    print worksheet.cell(x, 2).value.encode("utf-8")
    print worksheet.cell(x, 3).value.encode("utf-8")

    page.replace(worksheet.cell(x, 2).value.encode("utf-8"), worksheet.cell(x, 3).value.encode("utf-8"))
print page

但是替换功能不起作用。
页面
变量未显示任何更改。如何替换HTML文件中的文本?

在replace方法中将变量强制转换为字符串

fist_var = worksheet.cell(x, 2).value.encode('ascii', 'ignore')
second_var = worksheet.cell(x, 3).value.encode('ascii', 'ignore')
for x in range(0,90):
 page.encode('ascii', 'ignore').replace(first_var, second_var)

这应该行得通。希望这有帮助。

我已经试过了。我的内容不仅仅是ASCII值。尝试此操作时,我遇到以下错误-
UnicodeEncodeError:“ascii”编解码器无法对位置29处的字符u'\u2013'进行编码:序号不在范围(128)
如果可能,请使用“value.encode('ascii',ignore')转义这些值”然后再试一次。你能在你的答案中改变它吗?在这种情况下,我能保留非ASCII字符吗?我在输出中需要它们上述代码给出以下错误:UnicodeEncodeError:“ascii”编解码器无法对位置29:序号不在范围内的字符u'\u2013'进行编码(128请显示完整的回溯。该错误发生在何处?
回溯(最后一次调用):文件“langscript.py”,第16行,第页。替换(工作表.cell(x,2).value,工作表.cell(x,3).value)类型错误:应为字符缓冲区对象
是否在cmd.exe外壳中运行此对象?如果是:键入
cp 1252
并在提示下按enter键,然后重新运行代码。