1
나는 아래와 같이 쓰여진 aws-lambda
기능이 있고 html 내용을 돌려 보낸다. 수입 urllib2가 수입 JSON은레일 Nokogiri html 파싱
def lambda_handler(event, context):
# TODO implement
req_url = event['url']
header = {"User-Agent" : 'Mozilla/5.0'}
response = ""
try:
request = urllib2.Request(req_url, headers=header)
response = urllib2.urlopen(request).read()
except:
response = "404 called"
return response
그리고 content_get
에 뭔가 이해할 수없는 인코딩에 문제가있다, 그러나 Rails
resp = lambda.invoke(function_name: 'lambda_crawl', payload: s)
content = resp['payload'].read
content_get = Nokogiri::HTML(content)
이를 구문 분석합니다. <li class='\"rank01\"'>
content_get
인 경우 at_css
또는 xpath
방법이 Nokogiri
인 경우 적합하지 않습니다.
왜 이런 종류의 일이 발생하는지 잘 모르겠습니다. 슬래시를 없애려고했지만 유니 코드 문자가 내용물에 존재합니다. \u306e\u8a9e
이렇게하면 해결할 수 없습니다. 또한 인코딩 검사는 'utf-8'로 인코딩되었음을 보여줍니다.
이 문제의 근원은 무엇입니까?
'콘텐츠'는 어떻게 생겼습니까? – EJ2015
문제는 모든 값이 '\ "rank01 \"'이상한 '\ \'것으로 겹쳐져 있다고 말한 것입니다. –
사람들이 왜 이런 일이 발생하는지 파악하기 위해 '콘텐츠'를 표시하면 도움이 될 것 같아요. – EJ2015