(
    anchor,    # type: HTMLElement
    page_url,  # type: str
    base_url,  # type: str
)
return link
Convert an anchor element in a simple repository page to a Link.
Convert an anchor element in a simple repository page to a Link.
Convert an anchor element in a simple repository page to a Link .
def _create_link_from_element(
    anchor,    # type: HTMLElement
    page_url,  # type: str
    base_url,  # type: str
):
    # type: (...) -> Optional[Link]
    """
    Convert an anchor element in a simple repository page to a Link.
    """
    href = anchor.get("href")
    if not href:
        return None

    url = _clean_link(urllib_parse.urljoin(base_url, href))
    pyrequire = anchor.get('data-requires-python')
    pyrequire = unescape(pyrequire) if pyrequire else None

    yanked_reason = anchor.get('data-yanked')
    if yanked_reason:
        # This is a unicode string in Python 2 (and 3).
        yanked_reason = unescape(yanked_reason)

    link = Link(
        url,
        comes_from=page_url,
        requires_python=pyrequire,
        yanked_reason=yanked_reason,
    )

    return link
def _create_link_from_element ( anchor , # type: HTMLElement page_url , # type: str base_url , # type: str ) : # type: (...) -> Optional[Link] href = anchor . get ( "href" ) if not href : return None url = _clean_link ( urllib_parse . urljoin ( base_url , href ) ) pyrequire = anchor . get ( 'data-requires-python' ) pyrequire = unescape ( pyrequire ) if pyrequire else None yanked_reason = anchor . get ( 'data-yanked' ) if yanked_reason : # This is a unicode string in Python 2 (and 3). yanked_reason = unescape ( yanked_reason ) link = Link ( url , comes_from = page_url , requires_python = pyrequire , yanked_reason = yanked_reason , ) return link