Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何解析HTML,然后将其写入.py文件_Python_Html_File Writing - Fatal编程技术网

Python 如何解析HTML,然后将其写入.py文件

Python 如何解析HTML,然后将其写入.py文件,python,html,file-writing,Python,Html,File Writing,我试图解析一些HTML,然后将其写入.py文件。以下是我正在使用的代码: from html.parser import HTMLParser class MyHTMLParser(HTMLParser): def handle_data(self, data): print(data) f = open('/Users/austinhitt/Desktop/Test.py', 'w') f = open('/Users/austinhi

我试图解析一些HTML,然后将其写入.py文件。以下是我正在使用的代码:

from html.parser import HTMLParser

class MyHTMLParser(HTMLParser):
    def handle_data(self, data):
        print(data)
        f = open('/Users/austinhitt/Desktop/Test.py', 'w')
        f = open('/Users/austinhitt/Desktop/Test.py', 'r')
        t = f.read()
        f = open('/Users/austinhitt/Desktop/Test.py', 'w')
        f.write(t + '\n' + data)
        f.close()

parser = MyHTMLParser()
parser.feed('<html>'
            '<body>'
            '<p>import time as t</p>'
            '<p>from os import path</p>'
            '<p>import os</p>'
            '</body>'
            '</html>')
从html.parser导入HTMLParser
类MyHtmlPasser(HtmlPasser):
def句柄_数据(自身、数据):
打印(数据)
f=打开('/Users/austinhitt/Desktop/Test.py','w')
f=打开('/Users/austinhitt/Desktop/Test.py','r')
t=f.read()
f=打开('/Users/austinhitt/Desktop/Test.py','w')
f、 写入(t+'\n'+数据)
f、 关闭()
parser=MyHTMLParser()
parser.feed(“”
''
“导入时间为t

” “从操作系统导入路径” “导入操作系统” '' '')

我没有收到任何错误,但是只有最后一个p标记的内容被放入文件中。我只想将p标记内部的内容添加到文件中,而不是p标记本身。我需要将每个p标记的内容添加到文件中,我不想使用BeautifulSoup或其他非内置模块。我使用的是Python 3.5.1

似乎在使用“写入”模式后读取了文件“Test.py”,这可能会导致数据丢失