def test_get_post_href():
    soup = build_beautiful_soup_from_path('sample/sample_post.html')
    post = PostPageParser.parser_factory(soup)

    url = 'http://p30download.com/fa/entry/35912/'
    name = u'دانلود Ubuntu v14.04.1 x86/x64 - لینوکس اوبونتو'
    views = '217,150'
    category = u'نرم افزار/سیستم عامل/لینوکس'
    description = u'''Ubuntu نمونه توضیح کوتاه شده برات تست بهتر'''
    specifications = {
        u'امتیاز': '<img class="image-middle" src="http://p30download.com/template/images/4.5-star.gif"/>',
        u'تاریخ انتشار': '09:59 - 93/5/12',
        u'حجم فایل': u'753.3 + 763 مگابایت',
        u'منبع': u'پی سی دانلود',
    }
    download_links = [
        'http://ftp.ticklers.org/releases.ubuntu.org/releases//14.04.1/ubuntu-14.04.1-desktop-i386.iso',
        'http://ftp.acc.umu.se/mirror/ubuntu-releases/14.04.1/ubuntu-14.04.1-desktop-amd64.iso',
    ]
    assert post.url == url
    assert post.name == name
    assert post.views == views
    assert post.category == category
    assert post.description == description
    assert post.specification == specifications
    assert list(post.download_links) == download_links

    assert json.loads(post.jsonify()) == {
        'URL': url,
        'name': name,
        'views': views,
        'category': category,
        'description': description,
        'specifications': specifications,
        'download_links': download_links,
    }
def test_get_post_href():
    soup = build_beautiful_soup_from_path("sample/sample_post.html")
    post = PostPageParser.parser_factory(soup)

    url = "http://p30download.com/fa/entry/35912/"
    name = u"دانلود Ubuntu v14.04.1 x86/x64 - لینوکس اوبونتو"
    views = "217,150"
    category = u"نرم افزار/سیستم عامل/لینوکس"
    description = u"""Ubuntu نمونه توضیح کوتاه شده برات تست بهتر"""
    specifications = {
        u"امتیاز": '<img class="image-middle" src="http://p30download.com/template/images/4.5-star.gif"/>',
        u"تاریخ انتشار": "09:59 - 93/5/12",
        u"حجم فایل": u"753.3 + 763 مگابایت",
        u"منبع": u"پی سی دانلود",
    }
    download_links = [
        "http://ftp.ticklers.org/releases.ubuntu.org/releases//14.04.1/ubuntu-14.04.1-desktop-i386.iso",
        "http://ftp.acc.umu.se/mirror/ubuntu-releases/14.04.1/ubuntu-14.04.1-desktop-amd64.iso",
    ]
    assert post.url == url
    assert post.name == name
    assert post.views == views
    assert post.category == category
    assert post.description == description
    assert post.specification == specifications
    assert list(post.download_links) == download_links

    assert json.loads(post.jsonify()) == {
        "URL": url,
        "name": name,
        "views": views,
        "category": category,
        "description": description,
        "specifications": specifications,
        "download_links": download_links,
    }
Пример #3
0
def extract_sample_posts_info(posts_count):
    for post_url in extract_posts_link(posts_count):
        parser = PostPageParser.parser_factory(get_soup_from_url(post_url))
        yield parser.jsonify()