だから、これは私が抽出する必要がありますリンクです:正規表現の難しさ
http://www.hrmagazine.co.uk/article-details/finance-sector-dominates-working-families-benchmark
そして、これは私が現在
.+\/article-details\/.+\-.+\-.+\-.+\-.+\-.+$
問題持っているもの、しかし、それは、任意の番号を抽出されています上記のスペースをハイフンで置き換えた特に6語のタイトルではなく、「/ article-details /」の後の単語とハイフンを使用します。私はこのフォーマット
http://www.hrmagazine.co.uk/article-details/one-two-three-four-five-six
ウェブサイトのこのタイプのための正しい正規表現は何のようなリンクを受け入れるためにそれを必要とするときにそれは悪い結果
http://www.hrmagazine.co.uk/article-details/finance-sector-dominates-working-families-benchmark-test
を受け入れるだろうか?ハイフンを含む - 私はScrapy /スパイダーを持っている現在の抽出は、あなたの正規表現のもの.+
のそれぞれは、任意の文字の任意の数を一致させることができ、次の
rules = (Rule(LinkExtractor(allow=['.+\/article-details\/.+\-.+\-.+\-.+\-.+\-.+$']), callback='parse_item', follow=True),)
5つのハイフンを含むリンク参照を抽出するには、{count(tokenize(substring-after(@href、 "article-details /")、 " - "))= 6]/@ hrefを試してください – Andersson
Whereその声明は問題を参照していますか?そして、それは正規表現の形式には見えません... – Leggerless
"XPath"タグであなたの質問をマークしました。これはXPath – Andersson