如何解决爬取GitHub issues body时出现非法字符的问题?

How to solve the problem of illegal characters when crawling GitHub issues' body?

我使用 GitHubAPI 来抓取 GitHub 问题。但是由于不同国家的语言或其他特殊字符,我的代码总是因为非法字符而停止工作。我尝试了两种解决方案,但这两种仍然会报错。这是我的代码:

repo_dicts = response_dict['items']
Body = repo_dict['body']

解决方案 1:

Body = ILLEGAL_CHARACTERS_RE.sub(r'', Body)

它将报告:TypeError: expected string or bytes-like object

解决方案 2:

Body = str(repo_dict['body']).encode('utf-8')

它将报告:引发 IllegalCharacterError openpyxl.utils.exceptions.IllegalCharacterError

爬到这个issue就报错,不知道非法字符在哪里? https://github.com/angular/angular.js/issues/3651https://github.com/jekyll/jekyll/issues/1376 下面的问题可以找到一个非法字符。

我使用下面的代码忽略了这个错误,它起作用了:

Body = repo_dict['body']
try:
    Body = ILLEGAL_CHARACTERS_RE.sub(r'', Body)
except:
    print("ILLEGAL_CHARACTERS..")
    Body = "ILLEGAL_CHARACTERS"