有沒有一種方法可以檢查LWP :: UserAgent是否可以使用?什麼代碼檢查LWP :: UserAgent是否可以使用?
可能的是,該效應初探的code
,例如一個get
請求,可以始終返回500
,並且在一個status_line
消息可以是500 HTML::Parser object version 3.35 does not match bootstrap parameter 3.72
。
有沒有一種方法可以檢查LWP :: UserAgent是否可以使用?什麼代碼檢查LWP :: UserAgent是否可以使用?
可能的是,該效應初探的code
,例如一個get
請求,可以始終返回500
,並且在一個status_line
消息可以是500 HTML::Parser object version 3.35 does not match bootstrap parameter 3.72
。
看起來你的Perl安裝有點壞。 重試請求不會修復它。
此錯誤消息來自XSLoader。 The ExtUtils::MakeMaker toolchain documentation解釋這一點:
XS碼是模塊版本號非常敏感,如果你的Perl模塊中的版本號不匹配會抱怨。如果更改模塊的版本號而不重新運行Makefile.PL,則舊版本號將保留在Makefile中,從而導致XS代碼的編號錯誤。
該XSLoader distribution brings a unit test以確保發生這種情況。
在消息
500 HTML解析器::對象版本3.35不匹配的引導參數3.72
它說,你HTML::Parser的Perl模塊版本3.35,但它會嘗試加載XS庫是3.72版(這是當前版本)。 In line 11 of HTML::Parser它確實是XSLoader::load('HTML::Parser', $VERSION)
,正好在它上面定義$VERSION
爲3.72。所以這應該工作。
目前尚不清楚你在做什麼,以及你正在使用哪些模塊,但我建議你重新安裝HTML :: Parser。除非增加更多信息,否則我不能多說。
我用grep.cpan.me,它允許你在CPAN上所有文件的grep發現這一點。我搜索了does not match bootstrap parameter。
您可以在您看到該問題的地方發佈您的@ @ INC'的內容以及'$ HTML :: Parser :: VERSION'的內容。你可以將這些加入你的問題。 – simbabque
另外,你可以如何使用LWP :: UserAgent?我改變了我的HTML :: Parser來加載錯誤的版本,但是我的$ ua = LWP :: UserAgent-> new;我的$ res = $ ua-> get('http://example.org');'給我一個200.你在做別的事情嗎?我不認爲LWP :: UA甚至使用HTML :: Parser。當我用改變的HTML :: Parser代碼嘗試使用WWW :: Mechanize時,它會立即中斷並拋出一大堆錯誤並停止編譯。 **你沒有告訴我們所有的事情**。 – simbabque