小编Inc*_*ito的帖子

如何清除stringio对象?

我创建了一个stringio对象,其中包含一些文本.我想清除它现有的值并重用它而不是回忆它.无论如何这样做?

python stringio

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

如何将Perl正则表达式中的捕获存储到单独的变量中?

我有一个正则表达式:

/abc(def)ghi(jkl)mno(pqr)/igs
Run Code Online (Sandbox Code Playgroud)

如何将每个括号的结果捕获到3个不同的变量中,每个变量一个?现在我使用一个数组来捕获所有结果,它们按顺序出现,但后来我必须解析它们,列表可能很大.

@results = ($string =~ /abc(def)ghi(jkl)mno(pqr)/igs);
Run Code Online (Sandbox Code Playgroud)

regex arrays perl regex-group

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

如何在Perl中获取追溯?

可能重复:
如何对Perl中的所有致命错误强制执行堆栈回溯?

我喜欢Python的一个方面是,当一个脚本因为错误而退出时,它会抛出一个回溯.我想知道是否还有Perl这样做呢?

perl exit traceback

14
推荐指数
2
解决办法
3959
查看次数

如何将datetime.date对象转换为time.struct_time对象?

我有一个python脚本,我需要比较两个日期.我有一个列表日期作为time.struct_time对象,我需要与一些datetime.date对象进行比较.

如何将datetime.date对象转换为time.struct_time对象?或者我可以直接使用它们进行比较吗?

python time datetime

10
推荐指数
1
解决办法
9975
查看次数

有没有办法挂钩到当前运行的python脚本,看看有什么进展?

我有一个偶尔会冻结的python脚本,我想知道为什么?有没有办法挂钩到python脚本,看看变量是什么线和/或它做什么?

python debugging

9
推荐指数
1
解决办法
2882
查看次数

如何在javascript中创建一个带有3个复选框/单选按钮作为选项的提示?

如何创建一个javascript提示框,您必须从中选择3个选项中的一个?我希望做一些类似于html表单的单选按钮,除了在javascript提示符中.

javascript prompt

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

pycurl/curl不遵循CURLOPT_TIMEOUT选项

我有一个多线程脚本,当它连接到服务器但服务器不发回任何东西时偶尔会冻结.Netstat显示连接的tcp套接字.即使我设置了TIMEOUT,也会发生这种情况.超时脚本中的超时工作正常.这是一些示例代码.

def xmlscraper(url):
  htmlpage = StringIO.StringIO()
  rheader = StringIO.StringIO()
  c = pycurl.Curl()
  c.setopt(pycurl.USERAGENT, "user agent string")
  c.setopt(pycurl.CONNECTTIMEOUT, 60)
  c.setopt(pycurl.TIMEOUT, 120)
  c.setopt(pycurl.FOLLOWLOCATION, 1)
  c.setopt(pycurl.WRITEFUNCTION, htmlpage.write)
  c.setopt(pycurl.HEADERFUNCTION, rheader.write)
  c.setopt(pycurl.HTTPHEADER, ['Expect:'])
  c.setopt(pycurl.NOSIGNAL, 1)
  c.setopt(pycurl.URL, url)
  c.setopt(pycurl.HTTPGET, 1)

pycurl.global_init(pycurl.GLOBAL_ALL)
for url in urllist:
    t = threading.Thread(target=xmlscraper, args=(url,))
    t.start()
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激!几个星期以来一直试图解决这个问题.

编辑:urllist有大约10个网址.似乎有多少并不重要.

edit2:我刚刚在下面测试了这段代码.我使用了一个睡眠100秒的PHP脚本.

import threading
import pycurl
def testf():
    c = pycurl.Curl()
    c.setopt(pycurl.CONNECTTIMEOUT, 3)
    c.setopt(pycurl.TIMEOUT, 6)
    c.setopt(pycurl.NOSIGNAL, 1)
    c.setopt(pycurl.URL, 'http://xxx.xxx.xxx.xxx/test.php')
    c.setopt(pycurl.HTTPGET, 1)
    c.perform()
t = threading.Thread(target=testf)
t.start()
t.join()
Run Code Online (Sandbox Code Playgroud)

该代码中的Pycurl似乎正常超时.所以我猜它与网址的数量有关?GIL?

EDIT3:

我认为它可能与libcurl本身有关,因为当我检查脚本时libcurl仍然连续几个小时连接到服务器.如果pycurl正确地超时,则套接字将被关闭.

python multithreading timeout pycurl

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

如何检查字典中的值是否都具有相同的值X?

我有一本字典,我正在尝试检查所有具有相同数值的值的罕见情况,比如说1.如何以有效的方式进行此操作?

python dictionary

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

如何从perl脚本中守护perl脚本?

我有一个perl脚本,使用反引号调用另一个perl脚本.我想改为调用这个脚本并让它守护进程.我该怎么做呢?

编辑:

我不关心与进程/守护进程通信.我很可能只是把它放在一个sqlite3表中.

perl daemon

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