このウェブサイトの広告URLを取得する方法を探しています。 http://www.quiltingboard.com/resources/
私がやりたいのは、おそらくページを継続的に更新して広告URLを取得するスクリプトを書くことです。
なにか提案を?
このウェブサイトの広告URLを取得する方法を探しています。 http://www.quiltingboard.com/resources/
私がやりたいのは、おそらくページを継続的に更新して広告URLを取得するスクリプトを書くことです。
なにか提案を?
BeautifulSoup だけでは十分ではありません。広告は JavaScript を介して挿入されます (ダブルクリック広告です)。
オプションは次のとおりです。
純粋な python にとどまる場合は、次のことを行う必要があります。
これらのメソッドは、コンバージョン トラッキングを処理するダブルクリック URL のみを取得します。リダイレクト先を知りたい場合は、それらの URL を開いてリダイレクトを見つける必要があります。
美しいスープはまさにあなたが探しているものです。
画面上部のテキスト広告について話していると思います。
これらのリンクは、ページが読み込まれた後に JavaScript を使用して読み込まれるため、Python 解析ライブラリを直接使用することはできません。
1 つのオプションは、ブラウザーにページをロードできるようにするSeleniumのようなツールを使用することです。それが完了したら、BeautifulSoup を使用して、探しているリンクをスキャンできます。
from bs4 import BeautifulSoup
soup = BeautifulSoup(html)
ads_div = soup.find('div', attrs={'class': 'ads'})
if ads_div:
for link in ads_div.find_all('a'):
print link['href']
Scrapyをチェックアウトします。
Webスクレイピングライブラリです。これにより、Web サイトからの情報を非常に簡単にクロールおよびスクレイピングできます。上記のリンクは公式チュートリアルへのリンクです。これには、必要と思われる行にまたがるものを含む、多くのサンプル コードが含まれています。
サイトによると単純なスクレイピング:
from scrapy.spider import BaseSpider
from scrapy.selector import HtmlXPathSelector
from tutorial.items import DmozItem
class DmozSpider(BaseSpider):
name = "dmoz"
allowed_domains = ["dmoz.org"]
start_urls = [
"http://www.dmoz.org/Computers/Programming/Languages/Python/Books/",
"http://www.dmoz.org/Computers/Programming/Languages/Python/Resources/"
]
def parse(self, response):
hxs = HtmlXPathSelector(response)
sites = hxs.select('//ul/li')
items = []
for site in sites:
item = DmozItem()
item['title'] = site.select('a/text()').extract()
item['link'] = site.select('a/@href').extract()
item['desc'] = site.select('text()').extract()
items.append(item)
return items
これは、ライブラリを使用してリンクをスクレイピングするマイナーな例であり、次の結果が得られます。
[dmoz] DEBUG: <200 http://www.dmoz.org/Computers/Programming/Languages/Python/Books/ > {'desc': [u' - David Mertz 著。アディソン・ウェズリー。進行中の書籍、全文、ASCII 形式。フィードバックを求めます。[作者のウェブサイト、Gnosis Software, Inc.\n]、'link': [u'http://gnosis.cx/TPiP/']、'title': [u'Python でのテキスト処理']} [dmoz]デバッグ: <200 http://www.dmoz.org/Computers/Programming/Languages/Python/Books/からスクレイピング> {'desc': [u' - Sean McGrath 著; Prentice Hall PTR、2000 年、ISBN 0130211192、CD-ROM あり。XML アプリケーションを迅速に構築する方法、Python チュートリアル、DOM および SAX、新しい Pyxie オープン ソース XML 処理ライブラリ。[Prentice Hall PTR]\n'], 'link': [u'http://www.informit.com/store/product.aspx?isbn=0130211192'], 'title': [u'XML Processing with Python ']}
かなりクール。