0

このページhttp://www.nuffieldtheatre.co.uk/cn/events/event_listings.php?section=eventsから詳細を取得するために Scrubyt を使用しようとしています。リストからタイトルと詳細 URL を取得することはできましたが、next_page を使用してスクレーパーを次のページに移動させることはできません。次のページのリンクに正しいパターンを使用していないことが原因だと思います。「次のページ」という文字列を試してみました。また、XPath も試しました。他のアイデアはありますか?

コードは以下のとおりです。

require 'rubygems'
require 'scrubyt'

nuffield_data = Scrubyt::Extractor.define do
  fetch 'http://www.nuffieldtheatre.co.uk/cn/events/event_listings.php?section=events'

  event do
    title 'The Coast of Mayo'
    #url "href", :type => :attribute
    link_url
  end

  next_page "Next Page", :limit => 2


end

  nuffield_data.to_xml.write($stdout,1)
4

1 に答える 1

2

少し異なる URL でこれを試してください。

fetch 'http://www.nuffieldtheatre.co.uk/cn/events/event_listings.php'

Scryt は、URL の末尾にある "?section=events" クエリに問題があるようです。

次のページを探すとき、次の URL を返そうとしています:

http://www.nuffieldtheatre.co.uk/cn/events/?pageNum_rsSearch=1&totalRows_rsSearch=39§ion=events

それ以外の:

http://www.nuffieldtheatre.co.uk/cn/events/event_listings.php?pageNum_rsSearch=1&totalRows_rsSearch=39§ion=events

URL の末尾にあるクエリ文字列を削除すると、これが修正されるようです。これをバグとして報告することをお勧めします。

于 2008-10-04T10:34:51.870 に答える