python-PipeMapRed.waitOutputThreads():子进程失败,代码为1

丹尼

最近,我想解析网站,然后使用BeautifulSoup过滤我想要的内容并在hdfs中的csv文件中编写。

现在,我正在使用BeautifulSoup过滤网站代码。

我想使用mapreduce方法执行它:

hadoop jar /usr/lib/hadoop-0.20-mapreduce/contrib/streaming/hadoop-streaming-2.3.0-mr1-cdh5.0.2.jar 
-mapper /pytemp/filter.py 
-input /user/root/py/input/ 
-output /user/root/py/output40/

输入文件就像kvs(PER LINE):(key,value)=(url,content)

内容,我的意思是:

<html><head><title>...</title></head><body>...</body></html>

filter.py文件:

#!/usr/bin/env python
#!/usr/bin/python
#coding:utf-8
from bs4 import BeautifulSoup
import sys

for line in sys.stdin:
    line = line.strip()
    key, content = line.split(",")

    #if the following two lines do not exist, the program will execute successfully
    soup = BeautifulSoup(content)
    output = soup.find()         

    print("Start-----------------")
    print("End------------------")

顺便说一句,我认为我不需要reduce.py来完成我的工作。

但是,我收到错误消息

Error: java.lang.RuntimeException: PipeMapRed.waitOutputThreads(): subprocess failed with code 1
at org.apache.hadoop.streaming.PipeMapRed.waitOutputThreads(PipeMapRed.java:320)
at org.apache.hadoop.streaming.PipeMapRed.mapRedFinished(PipeMapRed.java:533)
at org.apache.hadoop.streaming.PipeMapper.close(PipeMapper.java:130)
at org.apache.hadoop.mapred.MapRunner.run(MapRunner.java:61)
at org.apache.hadoop.streaming.PipeMapRunner.run(PipeMapRunner.java:34)
at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:430)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:342)
at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:168)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:415)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1548)
at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:163)

这是一个答复,说这是内存问题,但是我的输入文件只有3MB。http://grokbase.com/t/gg/rhadoop/13924fs4as/972-getting-error-pipemapred-waitoutputthreads-while-running-mapreduce-program-for-40mb-of-size数据集

我不知道我的问题。我为此搜索了很多东西,但仍然无法正常工作。

我的环境是:

  1. CentOS6的
  2. Python2.7
  3. Cloudera CDH5

感谢您在这种情况下的帮助。

于2016/06/24编辑

首先,我检查了错误日志,发现问题在于无法解包的值太多(也感谢@kynan的回答)

只是举个例子为什么会发生

<font color="#0000FF">
  SomeText1
  <font color="#0000FF">
    SomeText2
  </font>
</font>

如果内容的一部分与上面类似,我调用soup.find(“ font”,color =“#0000FF”)并分配给output这将导致将两种字体分配给一个输出,因此这就是错误太多而无法解包的原因

只需更改output = soup.find()(Var1, Var2, ...) = soup.find_all("font", color="#0000FF", limit=AmountOfVar)并正常工作:)

基南

此错误通常意味着映射器进程已终止。要查明为什么要检查用户登录,请执行以下操作$HADOOP_PREFIX/logs/userlogs:每个作业有一个目录,每个容器有一个目录。每个容器目录中都有一个文件,stderr其中包含发送到stderr的输出,即错误消息。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

子进程的python退出代码

来自分类Dev

如果失败则如何退出python子进程

来自分类Dev

通过子进程运行Python脚本失败

来自分类Dev

python子进程对irfanview的调用失败

来自分类Dev

为什么在运行Modelsim Executable时Python子进程返回代码始终为0?

来自分类Dev

无法为子进程[python]提供密码

来自分类Dev

在python子进程中为后台进程使用'&'

来自分类Dev

如果创建multiprocessing.Pool,则Python子进程wait()失败

来自分类Dev

Python 3.5 setup.py egg_info失败,错误代码为1 [Linux]

来自分类Dev

virtualenvwrapper:命令“ python setup.py egg_info”失败,错误代码为1

来自分类Dev

命令python setup.py egg_info失败,错误代码为1

来自分类Dev

python setup.py egg_info失败,错误代码为1

来自分类Dev

“ python setup.py egg_info失败,错误代码为1

来自分类Dev

egg_info在python 3.6中的pip安装失败,错误代码为1

来自分类Dev

python setup.py egg_info 失败,错误代码为 1

来自分类Dev

错误:“python setup.py egg_info”失败,错误代码为 1

来自分类Dev

Python子进程.Popen用信号杀死后返回代码

来自分类Dev

如果创建,Python子进程stderr / stdout字段为None

来自分类Dev

python 子进程 popen 将主目录设置为 cwd

来自分类Dev

返回“命令“ python setup.py egg_info”的Python pip命令失败,错误代码为1”

来自分类Dev

python子进程-分离进程

来自分类Dev

后台的Python子进程

来自分类Dev

python子进程死锁

来自分类Dev

python 3.4子进程

来自分类Dev

python子进程:FileNotFoundError

来自分类Dev

无法安装pyzmail-“命令“ python setup.py egg_info”失败,错误代码为1”

来自分类Dev

无法删除用户-运行'/ usr / sbin / userdel'失败:子进程已退出,代码为16

来自分类Dev

为什么python子进程zip失败,但是在shell上运行却正常?

来自分类Dev

具有失败命令返回码0的python子进程

Related 相关文章

  1. 1

    子进程的python退出代码

  2. 2

    如果失败则如何退出python子进程

  3. 3

    通过子进程运行Python脚本失败

  4. 4

    python子进程对irfanview的调用失败

  5. 5

    为什么在运行Modelsim Executable时Python子进程返回代码始终为0?

  6. 6

    无法为子进程[python]提供密码

  7. 7

    在python子进程中为后台进程使用'&'

  8. 8

    如果创建multiprocessing.Pool,则Python子进程wait()失败

  9. 9

    Python 3.5 setup.py egg_info失败,错误代码为1 [Linux]

  10. 10

    virtualenvwrapper:命令“ python setup.py egg_info”失败,错误代码为1

  11. 11

    命令python setup.py egg_info失败,错误代码为1

  12. 12

    python setup.py egg_info失败,错误代码为1

  13. 13

    “ python setup.py egg_info失败,错误代码为1

  14. 14

    egg_info在python 3.6中的pip安装失败,错误代码为1

  15. 15

    python setup.py egg_info 失败,错误代码为 1

  16. 16

    错误:“python setup.py egg_info”失败,错误代码为 1

  17. 17

    Python子进程.Popen用信号杀死后返回代码

  18. 18

    如果创建,Python子进程stderr / stdout字段为None

  19. 19

    python 子进程 popen 将主目录设置为 cwd

  20. 20

    返回“命令“ python setup.py egg_info”的Python pip命令失败,错误代码为1”

  21. 21

    python子进程-分离进程

  22. 22

    后台的Python子进程

  23. 23

    python子进程死锁

  24. 24

    python 3.4子进程

  25. 25

    python子进程:FileNotFoundError

  26. 26

    无法安装pyzmail-“命令“ python setup.py egg_info”失败,错误代码为1”

  27. 27

    无法删除用户-运行'/ usr / sbin / userdel'失败:子进程已退出,代码为16

  28. 28

    为什么python子进程zip失败,但是在shell上运行却正常?

  29. 29

    具有失败命令返回码0的python子进程

热门标签

归档