更换HTML字符串我已经在这场斗争了一段时间。我一直在尝试使用Python修改基于文件夹内容的html。但每当我尝试修改它时,整个事情都会崩溃。我是新的Python和HTML。我做了一个类,将加载HTML文件和一些子功能进行修改:与Python
class htmlfile(object):
data = ""
def openHTML(self, name="main.html"):
# f = open('main.html')
# for line in f:
# #print line.replace("Thinominal", "")
with open(name) as myHtml:
data = myHtml.read()
self.data = data
# def __repr__(self):
# return "Test()"
def __str__(self):
return self.data
def replace(self, location, insert):
self.data.replace(location, insert)
def makeBackground(self, location):
self.data.replace("backgrounds: [", "backgrounds: ["+ getPhotos2())
和其他功能从文件夹中获得的“内容” /照片列表并返回,后来被插入到字符串HTML:
def getPhotos2(dir, type="jpg"): # get Photo from a directory with a chosen Type. Default Type = jpg
os.chdir(dir)
data = ""
for file in glob.glob("*.%s" % type):
data = data + "{src: '%s/%s', fade: 2000}," % (dir, file)
return data
但每当我运行这个,这个错误显示:
self = <__main__.htmlfile object>, self.data = '<!DOCTYPE html>\r\n<html lang="en">\r\n<head>\r\n <...\n</script>\r\n<!-- /Navbar-->\r\n\r\n</body>\r\n\r\n</html>', self.data.toString undefined, global getPhotos2 = <function getPhotos2>
我不明白。 python是不是打开一个字符串/文本文件的HTML?并打印它?如果你只是做:
html = """ <head>Hello World</head>"""
print html
这将工作。你也可以这样做:
html.replace("hello world", "BYE BYE")
了。那么我在这里做错了什么?我错过了什么吗?任何意见,将不胜感激。
这是我如何调用该函数:
htmlfile = htmlfile()
htmlfile.openHTML()
htmlfile.makeBackgroud("background")
print htmlfile
我想只能够更换的HTML的任何部分,就好像它是一个字符串。例如: 这是手动填充:
backgrounds: [
{src: './img/nature1.jpg', fade: 2000},
{src: './img/bw1.jpg', fade: 2000},
{src: './img/portrait1.jpg', fade: 2000},
{src: './img/portrait5.jpg', fade: 2000},
{src: './img/portrait2.jpg', fade: 2000},
{src: './img/portrait3.jpg', fade: 2000},
{src: './img/portrait4.jpg', fade: 2000},
{src: './img/forest.jpg', fade: 2000}
]
与“makeBackground”功能,它会产生这些字符串和HTML内插入。如果我有一个包含coolImg.jpg的文件夹调用背景。使背景生成:{src: './img/coolImg.jpg', fade: 2000}
并将其插入“背景:”部分。结果在:
backgrounds: [
{src: './img/nature1.jpg', fade: 2000},
{src: './img/bw1.jpg', fade: 2000},
{src: './img/portrait1.jpg', fade: 2000},
{src: './img/portrait5.jpg', fade: 2000},
{src: './img/portrait2.jpg', fade: 2000},
{src: './img/portrait3.jpg', fade: 2000},
{src: './img/portrait4.jpg', fade: 2000},
{src: './img/forest.jpg', fade: 2000},
{src: './background/coolImg.jpg', fade: 2000} <- THIS HERE
]
您还没有表现出任何差错。我们在哪里调用函数?你对结果做什么? –
让我们知道你如何调用函数以及你想达到什么目的。一个例子会有所帮助。 – Ajay2588
对不起。我编辑了我如何调用函数的代码。 – Rook