python으로 HTML 태그를 구문 분석하는 것에 대한 질문이 있습니다. 내 코드는 다음과 같습니다HTML을 구문 분석하여 파일에 쓰기
#!/usr/bin/python
# -*- coding: utf-8 -*-
from lxml import html
import requests
import urllib2
import sys
import re
import time
import urllib
import datetime
def get_web():
try:
input_sat = open('rtc.xml','w')
godina = datetime.date.today().strftime("%Y")
print godina
mjesec = datetime.date.today().strftime("%m")
print mjesec
for x in range (32):
if x < 1:
x = x + 1
var = x
url = 'http://www.rts.rs/page/tv/sr/broadcast/20/RTS+1.html?month={}&year={}&day={}&type=0'.format(mjesec, godina, var)
page = requests.get(url)
tree = html.fromstring(page.text)
a = tree.xpath('//div[@id="center"]/h1/text()') # datum
b = tree.xpath('//div[@class="ProgramTime"]/text()') # time
c = tree.xpath('//div[@class="ProgramName"]/text()')
e = tree.xpath('//div[@class="ProgramName"]/a[@class="recnik"]/text()')
for line in zip(a,b,c,e):
var = line[0]
print >> input_sat, line+'\n'
except:
pass
get_web()
스크립트는 잘 작동하고 URL에서 태그를 얻을 수 있지만, 어떻게 내가 처리를 위해 파일로 쓸 수? 코드를 for
루프로 실행하면 작동하지 않습니다. 문제가 어디 있는지 모르겠습니다.
코드를 다시 작성했지만 페이지의 내용을 파일로 출력하지 않습니다.
이 당신의 전체 코드입니다 당신은 핸들러의
write()
기능을 사용하고, 또한 UTF-8 텍스트 인코딩해야? 나는 그것을 실행하려고'NameError : global name 'logging'이 정의되지 않았다. – Kevin파이썬 파일 i/o를 살펴 봅니다. http://www.tutorialspoint.com/python/python_files_io.htm (Google에서 두 번째 히트) ... 파일을 열어 원하는 파일을 쓰고 닫아야합니다. –
지금 내 코드를 다시 작성했습니다. 문제는 url의 sercont 태그에 대한 FOR 루프에 있습니다. 파일에 쓰지 않습니다. –