小编Gil*_*not的帖子

BeautifulSoup无法解析网页?

我现在正在使用美丽的汤来解析网页,我听说它很有名,很好,但看起来效果不好.

这就是我做的

import urllib2
from bs4 import BeautifulSoup

page = urllib2.urlopen("http://www.cnn.com/2012/10/14/us/skydiver-record-attempt/index.html?hpt=hp_t1")
soup = BeautifulSoup(page)
print soup.prettify()
Run Code Online (Sandbox Code Playgroud)

我觉得这很简单.我打开网页并将其传递给beautifulsoup.但这就是我得到的:

Warning (from warnings module):

File "C:\Python27\lib\site-packages\bs4\builder\_htmlparser.py", line 149

"Python's built-in HTMLParser cannot parse the given document. This is not a bug in Beautiful Soup. The best solution is to install an external parser (lxml or html5lib), and use Beautiful Soup with that parser. See http://www.crummy.com/software/BeautifulSoup/bs4/doc/#installing-a-parser for help."))

...

HTMLParseError: bad end tag: u'</"+"script>', at line 634, column 94

我认为CNN网站应该设计得很好,所以我不太清楚会发生什么.有没有人对此有所了解?

python parsing beautifulsoup

5
推荐指数
2
解决办法
1万
查看次数

用于归档日志文件的Bash脚本

我正在尝试编写一个脚本,它将重命名和存档日志文件,但我无法弄明白.下面是一个如何工作的示例:如果您有一个名为error_log的文件,并且您第一次运行脚本,则应将文件error_log重命名为error_log.1,然后error_log.1使用gzip 进行存档.第二次运行脚本时,您将有两个文件:error_log error_log.1.gz,现在您应该重命名error_log.1.gzerror_log.2.gz; error_logerror_log.1并再次存档error_log.1error_log.1.gz用gzip.

unix linux bash

5
推荐指数
1
解决办法
2017
查看次数

Sed 错误:sed:-e 表达式 #1,字符 25:“s”的未知选项

我有文件 .config 行:
projdir name_of_the_projdir
我需要用我自己的变量替换 name_of_the_projdir 。我尝试这样做

sed -i 's/^projdir .*$/projdir '$projdir'/' .le/.config
Run Code Online (Sandbox Code Playgroud)

但我收到错误

sed: -e expression #1, char 25: unknown option to `s'
Run Code Online (Sandbox Code Playgroud)

有人知道该怎么办吗?...我尝试用 " 替换第一个 ' 和最后一个,用 @ 替换第一个 ' 和最后一个 / 。但仍然不起作用

sed

5
推荐指数
1
解决办法
6236
查看次数

使用 cat 命令时抑制错误消息

我有一个脚本,我使用 cat 命令递归复制文件夹中文件的内容,如下所示

test -f /tmp/$F || cat $F > /tmp/$F
Run Code Online (Sandbox Code Playgroud)

我收到以下错误

cat: read error: Invalid argument
Run Code Online (Sandbox Code Playgroud)

我想知道如何抑制此错误。我只能访问 shell 解释器(没有 bash)。

谢谢

linux error-handling cat

5
推荐指数
1
解决办法
5730
查看次数

如何用一些文本替换 VIM 中的捕获组 2

我正在使用下面的正则表达式将 abc1,cde2,efg3 替换为 hello 但不知何故它不起作用

 :%s/\(\d\{2}:\d\{2}:\d\{2\}\s\)\([A-z0-9]*\)/hello/gc
Run Code Online (Sandbox Code Playgroud)

3 月 17 日 02:25:01 abc1 micro:开始 use.slice。

Mar 17 02:25:01 cde2 micro:开始使用.slic

3 月 17 日 02:25:01 efg3 micro:开始使用.slic

regex vi vim

5
推荐指数
1
解决办法
2575
查看次数

lambda提示符在命令行中指示什么?

我刚安装Cmder在Windows机器上,作为安装Cygwin和使用bash shell的先驱。

这是我第一次安装它,我注意到使用的提示字符是lambda'?'。至少在* nix环境中,我更习惯将'$'作为默认提示字符。

lambda是否表示任何特别来自其他计算传统的东西?还是因为看起来很酷而将其作为默认设置?

windows shell lambda prompt cmder

5
推荐指数
1
解决办法
596
查看次数

在文件中查找包含重复字符的行

我需要一些帮助来查找包含重复字符的文本文件中的行.我更喜欢使用bash,但任何其他方法都会很好:)

一个小例子只是为了清楚地说明:
file.txt:

1234
11234
abcd
12234
ab321
1233
zs11w
12w2
Run Code Online (Sandbox Code Playgroud)

期望的输出:

11234
12234
1233
zs11w
12w2
Run Code Online (Sandbox Code Playgroud)

感谢你的帮助!

sorting bash character duplicates

4
推荐指数
1
解决办法
1292
查看次数

而IFS =读取-r -d $'\ 0'文件...解释

我不明白这行shell脚本.while语句是否需要设置$的'test'或[]或[[]]表达式?到1还是0?如何

while IFS= read -r -d $'\0'; do ...; done
Run Code Online (Sandbox Code Playgroud)

去做?任何帮助理解这里的语法非常感谢.

bash

4
推荐指数
1
解决办法
2179
查看次数

使用“vcs_info”根据状态对 git 分支名称进行着色

的新手(我是长期用户),我有一个自定义提示(由不同来源混合而成),其中包含 git 的特定部分: 在此输入图像描述

我想要: -如果说“干净”,(master)则为绿色-如果说“不干净”,则为红色git status(master)git status

我不知道该怎么做,如果有人知道,我将不胜感激。

我的.zshrc

# (...)
# Easy colors in ZSH scripting
autoload -U colors && colors

setopt prompt_subst
autoload -Uz vcs_info

function +vi-git-untracked() {
  if [[ $(git rev-parse --is-inside-work-tree 2> /dev/null) == 'true' ]] && \
  [[ $(git ls-files --other --directory --exclude-standard | sed q | wc -l | tr -d ' ') == 1 ]] ; then
  hook_com[unstaged]+='%F{red}??%f'
fi
}

# Show …
Run Code Online (Sandbox Code Playgroud)

git zsh

4
推荐指数
1
解决办法
3656
查看次数

如何在 perlscript 中使用 RegEx 提取两个标签之间的编码

我想提取 <ix:hidden> 和 </ix:hidden> 之间的编码。请告知如何提取它们

<ix:hidden>
<ix:nonNumeric contextRef="Duration_4_1_2021_To_3_31_2022_IlKaMcQ2N0C41UxW3xo4zg" name="dei:DocumentType" id="Tc_evMsUKdlCEyCZtbxEMZIxg_1_1">DEF 14A</ix:nonNumeric>
<ix:nonNumeric contextRef="Duration_4_1_2021_To_3_31_2022_IlKaMcQ2N0C41UxW3xo4zg" name="dei:AmendmentFlag" id="Tc_nHcapE52UUqrWD0pLkbdag_2_1">false</ix:nonNumeric>
<ix:nonNumeric contextRef="Duration_4_1_2021_To_3_31_2022_IlKaMcQ2N0C41UxW3xo4zg" name="dei:EntityRegistrantName" id="Tc_ZXMW19KSmk2TfvdhMCMr_A_3_1">Walter Hamscher Co Number One</ix:nonNumeric>
<ix:nonNumeric contextRef="Duration_4_1_2021_To_3_31_2022_IlKaMcQ2N0C41UxW3xo4zg" name="dei:EntityCentralIndexKey" id="Tc_MybzAywpbUCU3LEGZc_Ftg_4_1">0000990667</ix:nonNumeric>
</ix:hidden>
Run Code Online (Sandbox Code Playgroud)
use strict;
use warnings;

my @ar_sp;
my $string;
my @ar_out;

# Source File 
my $src = 'iXBRL-Tagged_tm213138-13_def14a.htm';

# open source file for reading
open(FHR, '<', $src);
  
# Destination File
my $des = 'output.txt';

# Open new file to write
open(FHW, '>', $des);
  
  
print("Copying content from $src to $des\n");
@ar_sp = <FHR>;

# …
Run Code Online (Sandbox Code Playgroud)

perl

4
推荐指数
1
解决办法
84
查看次数

标签 统计

bash ×3

linux ×2

beautifulsoup ×1

cat ×1

character ×1

cmder ×1

duplicates ×1

error-handling ×1

git ×1

lambda ×1

parsing ×1

perl ×1

prompt ×1

python ×1

regex ×1

sed ×1

shell ×1

sorting ×1

unix ×1

vi ×1

vim ×1

windows ×1

zsh ×1