2014-06-30 1 views
0

웹 페이지 내의 특정 변수를 찾으려면 Python 스크립트에서 RegEx 식을 사용하려고한다. 그런 다음 CSV 파일을 사용하여이 파일을 내 보냅니다. 그러나 찾은 그룹에 정류장이 포함되어 있으면 전혀 내보내지지 않습니다. 이 문제를 어떻게 해결할 수 있습니까?파이썬 - 정규식을 포함하는 정규식 일치가 파일에 쓰지 않는다.

이 웹 페이지에서는 표시된 코드가 입력 된 코드에 따라 변경됩니다. 내 스크립트는 코드 입력을 자동화 한 다음 생성 된 항목을 기록합니다. 여기에 관련 내 코드의 일부입니다 : 참고로

import re 

regName = r'The item name is (.*?)\.' 

response = opener.open(
    'http://website.com/webpage.php' + itemValues) 
html = response.read() 
responseDecode = html.decode('utf8') 

name = re.findall(regName, responseDecode) 

#Convert stuff to Unicode 
uniName = name[0].encode('utf8', 'replace') 

with open("readable.txt", "a") as file: 
    file.write("\n"*2) 
    file.write(uniName + '\n') 

, 나는 아이템 이름의 일부는 악센트 문자가 포함되어 있기 때문에 유니 코드로 변환합니다.

EDIT : 예를 들어, R.O.B.O.T. 쓰여질 내용은 모두

답변

0

regName = r'The item name is (.*?)\.$'$$은 문자열의 끝 부분을 표시하므로 다른 전체 정지는 일찍 소비되지 않습니다. 지금 정규 표현식은 욕심 많고 첫 번째 표현과 일치합니다.

문자열이 바로 끝나지 않으면 공백이나 다른 문자를 추가하십시오. 항목 문자열의 끝을 표시하는 문자의 종류를 지정해야합니다.

+0

환상적입니다. 완벽하게 작동했습니다. 감사합니다. :) – ACascarino

관련 문제