小编nae*_*aeg的帖子

单击Scrapy中的按钮

我正在使用Scrapy抓取网页.当您点击某个按钮时,我只需弹出一些我需要的信息(当然,点击后也会出现在HTML代码中).

我发现Scrapy可以处理的形式(如登录)如图所示这里.但问题是没有形式可以填写,所以这不是我需要的.

如何只需单击一个按钮,然后显示我需要的信息?

我是否必须使用像mechanize或lxml这样的外部库?

python web-crawler scrapy web-scraping

37
推荐指数
2
解决办法
4万
查看次数

使用有限域声明下降/上升坐标的谓词

我想编写一个谓词,descendo,它声明第一个给定坐标[y,x]下降到第二个给定坐标(想象左上角有[0,0]的板).

Prolog中一个非常简单的实现可能如下所示:

descending(B, A) :-
  B = [B1,B2],
  A = [A1,A2],
  B1 is A1 + 1,
  B2 is A2 + 1.
Run Code Online (Sandbox Code Playgroud)

我没有在core.logic中实现这一点.我已经尝试了很多不同的东西(==/= fd/conso/appendo和+ fd/+).我试过的一件事:

(defn descendo
  [b a]
  (l/fresh [b1 b2 a1 a2]
           (l/== b [b1 b2])
           (l/== a [a1 a2])
           (l/+fd b1 1 a1)
           (l/+fd b2 1 a2)))
Run Code Online (Sandbox Code Playgroud)

大多数人在运行它们时只返回任何内容:

(l/run* [q]
  (l/fresh [a]
    (l/infd a (l/domain [0 0] [1 0] [0 1] [1 1]))
    (descendo a [0 0])
    (l/== q a)))

=> () ; expected output: ([1 1])
Run Code Online (Sandbox Code Playgroud)

我觉得在使用core.logic时,在Prolog中思考太多是不好的...任何暗示都赞赏.提前致谢. …

logic clojure prolog clojure-core.logic

28
推荐指数
1
解决办法
776
查看次数

音乐分析与可视化

我对用Python编写音乐可视化器感兴趣.

第一个问题是如何从音乐中获取信息?像音量,频率,转速等等从哪里来?从声卡或实际的音乐文件?

我的猜测来自声卡,但我如何访问声卡和所需信息?最好是以平台独立的方式(Linux是必须的).我已经阅读了一些关于傅里叶变换的内容,但我不确定这是否是最好的方法.

我想过使用OpenGL进行可视化,但我仍然愿意接受建议.

我已经查看了那些wikipages,但还没有找到答案:http : //wiki.python.org/moin/Audio/
http://wiki.python.org/moin/PythonInMusic

python audio visualization

17
推荐指数
2
解决办法
3万
查看次数

算法检查连接四个字段

我想知道在连接四场上检查胜利者的最佳方法是什么.

我对你们的想法感兴趣,是否对这类问题有一些"众所周知的"算法?

解:

我在Python中实现了Ardavan的哈希表解决方案.

我让算法在每个字段上运行一次.我的实现的最佳检查时间是0.047毫秒,最差的0.154毫秒和我的英特尔(R)酷睿2双核CPU T9600 @ 2.80GHz上的平均0.114毫秒.这足以满足我的需求,算法看起来很整洁.

algorithm

16
推荐指数
2
解决办法
3万
查看次数

从HTML标记中删除某些属性

如何从HTML代码中删除某些属性,如id,style,class等?

我以为我可以使用lxml.html.clean模块,但事实证明我只能删除样式属性Clean(style=True).clean_html(code).我不想在这个任务中使用正则表达式(属性可能会改变).

我想拥有什么:

from lxml.html.clean import Cleaner

code = '<tr id="ctl00_Content_AdManagementPreview_DetailView_divNova" class="Extended" style="display: none;">'

cleaner = Cleaner(style=True, id=True, class=True)
cleaned = cleaner.clean_html(code)

print cleaned
'<tr>'
Run Code Online (Sandbox Code Playgroud)

提前致谢!

python lxml beautifulsoup html-parsing

6
推荐指数
1
解决办法
3343
查看次数

变长数组何时合法?

我不是C++专家,但据我所知,这段代码应该因为size不是常数而失败:

#include<iostream>

using namespace std;

int main(int argc, char** argv)
{
  int size = *argv[1] - 48;
  char array [size];
  cout<<sizeof(array)<<endl;

  return 0;
}
Run Code Online (Sandbox Code Playgroud)

当我使用gcc编译它时,为什么这可行(更好的说是g ++)?

./test 7
7
/test 2 
2
Run Code Online (Sandbox Code Playgroud)

c++ gcc

4
推荐指数
2
解决办法
4583
查看次数