簡體   English   中英

Perl MozRepl清理問題

[英]Perl MozRepl cleanup problem

我正在編寫網絡爬蟲程序,並且我一直在使用WWW :: Mechanize :: Firefox瀏覽某些頁面(其他頁面我使用WWW :: Mechanize),這些頁面在頁面加載后一直在加載內容,而我從來沒有問題。

昨天我在腳本中添加了DBI和DBD :: mysql,添加了查詢以將數據導出到數據庫(這非常有效),但是突然MozRepl開始出現此錯誤:

(in cleanup) Can't call method "execute" on an undefined value at /Library/Perl/5.10.0/MozRepl.pm line 372 during global destruction.
(in cleanup) Can't call method "execute" on an undefined value at /Library/Perl/5.10.0/MozRepl.pm line 372 during global destruction.

並在1個周期后終止腳本(腳本應運行到到達特定文本文件的末尾為止,而不會)。

至少在這一部分中,我沒有涉及到腳本的這一部分(不需要在那些頁面上使用db)。 我檢查了一個文件比較應用程序,無法解決任何問題。

發布代碼可能很棘手,時間很長,我也不知道問題可能出在哪里。

編輯

有時,它還會給出此錯誤,而不是前一個錯誤:

(in cleanup) Can't call method "cmd" on an undefined value at /Library/Perl/5.10.0/MozRepl/Client.pm line 186 during global destruction.

這與DBI或DBD :: mysql無關。消息不必擔心,但我承認它們難看。

這些消息是在Perl全局銷毀期間以無序方式銷毀剩余的Perl / Javascript對象時發出的。 如果要避免它們,請在退出應用程序之前銷毀$mech對象。

undef $mech;
# end of program

如果$mech對象在程序關閉之前被釋放,則Perl / Javascript橋也可以有序地關閉。

另請注意,有關WWW :: Mechanize :: Firefox的首選論壇是http://perlmonks.org :)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM