爬蟲_requests_html

安裝

pip install requests_html

基本使用

# 導入
from requests_html import HTMLSession,HTML

# 生成會話
session = HTMLSession()

# 設置頭部
headers={
    'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36',
}

# 請求
url = "https://www.baidu.com"
response = session.get(url=url,headers=headers)

# post請求
session.post('http://httpbin.org/post', data={'name': 'zzz', 'passwd': 123})

# 頁面內容
response.html.html

# 所有連接
# 相對
for _ in response.html.links:
    print(_)
# 絕對
for _ in response.html.absolute_links:
    print(_)

# css選擇器
response.html.find('#some a',first=True,_encoding='utf-8', clean=false) # clean忽略style,script

# xpath選擇器
response.html.xpath('//[@id="some"]/a')

# 文本
ele.text

# html
ele.html

# 元素屬性
ele.attrs.get('id')

# 連接屬性
e.links  # 相對路徑
e.absolute_links # 絕對路徑

生成html

doc = """
    <!DOCTYPE html>
    <html>
        hello
    </html>
"""
html = HTML(html=doc)

script支持

res = session.get('http://python-requests.org/')
res.html.render()
# retries:失敗次數; 
# wait:加載前等待時間; 
# scrolldown:下滾次數;
# sleep:初次渲染後等待時間;
# reload:是否瀏覽器加載
# keep_page:是否允許rp.html.page訪問頁面

script ='''
    console.log('script')
'''
html.render(script=script)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章