首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在python中提取查询结果的特定部分

在python中提取查询结果的特定部分
EN

Stack Overflow用户
提问于 2015-10-10 12:12:38
回答 1查看 33关注 0票数 0

我已经编写了使用yandex转换一些英文外文字符的脚本,下面是代码:

代码语言:javascript
运行
复制
for pre in soup.select('body'):
    pree= pre.text
    print (pree)

HTML是:

代码语言:javascript
运行
复制
<body>
    onComplete_10([{"Alignment":"0:1-0:4 2:2-6:9 3:3-6:9","From":"zh-CHS","OriginalTextSentenceLengths":[4],"TranslatedText":"Drama Arts","TranslatedTextSentenceLengths":[10]}]);
</body>

返回的结果(当然)是:

代码语言:javascript
运行
复制
onComplete_10([{"Alignment":"0:1-0:4 2:2-6:9 3:3-6:9","From":"zh-CHS","OriginalTextSentenceLengths":[4],"TranslatedText":"Drama Arts","TranslatedTextSentenceLengths":[10]}]);

我只需要得到“戏剧艺术”的翻译文本。

注意:我已经更新了for循环。现在使用regex过滤我所需的数据,但仍然没有结果。

代码语言:javascript
运行
复制
for pre in soup.select('body'):
    p = re.compile(ur'"TranslatedText":"(.*?)"')
    strr = pre.text
    pree = re.findall(p, strr)
    print (pree)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-10 12:29:33

只是稍微改变了一下,这是个小小的错误。不过,由于某种原因,上述方法适用于regex101。

代码语言:javascript
运行
复制
for pre in soup.select('body'):
    p = re.compile(u'"TranslatedText":"(.*?)"')
    strr = pre.text
    pree = re.findall(p, strr)
    print (pree)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33053839

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档