您好,登錄后才能下訂單哦!
小編給大家分享一下python如何抓取需要掃微信登陸頁面,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
1.抓取的頁面需要登陸,以公司網頁為例,登陸網址https://app-ticketsys.hezongyun.com/index.php ,(該網頁登陸方式微信掃碼登陸)
2.需要抓取的內容如下圖所示:
需要提取
工單對應編號,如TK-2960
工單發起時間,如2018-08-17 11:12:13
工單標題內容,如設備故障
工單正文內容,如最紅框所示
1.按按Ctrl + Shift + I或者鼠標右鍵點擊檢查進入開發人員工具。
可以看到頁面顯示如下:
主要關注點如上圖框住和劃線處
首先點擊網絡,記住以下信息將用于代碼修改處。
Resquest URL:https: //app-ticketsys.hezongyun.com/index.php/ticket/ticket_list/init這個是需要爬取頁面的信息請求Menthod:GET餅干:用于需要登陸頁面User-Agent:Mozilla / 5.0(Windows NT 10.0; Win64; x64)AppleWebKit / 537.36(KHTML,類似Gecko)Chrome / 67.0.3396.62 Safari / 537.36
記住以上信息后粗略了解網頁樹形結構用BeatifulSoup中SELEC怎么取出內容
示例:的H1M1一段代碼如下:
html =“”“ <html> <head> <title>睡鼠的故事</ title> </ head> <body> <p class =”title“name =”dromouse“> <b>睡鼠的故事</ b > </ p> <p class =“story”>從前有三個小姐妹;他們的名字是 <a href =“http://example.com/elsie”class =“sister”id =“ link1“> <! - Elsie - > </a>, <a href="http://example.com/lacie" rel="external nofollow" class="sister" id="link2"> Lacie </a>和 <a href =“http://example.com/tillie”class =“sister”id =“link3”> Tillie </a>; 他們住在井底。</ p> <p class =“story”> ... </ p> “”“
如果我們喝湯得到了上面那段HTML的結構提取內容方法如下
1.通過標簽名查找soup.select( '標題'),如需要取出含有一個標簽的內容則soup.select( 'a')的
2.通過類名查找soup.select( 'CLASS_NAME ')如取出標題的內容則soup.select('。標題')
3.通過ID名字查找soup.select( '#ID_NAME')如取出ID = LINK2的內容則soup.select( '#LINK2')
上述元素名字可以利用左上角箭頭取出,如下圖
# -*- coding:utf-8 -*- import requests import sys import io from bs4 import BeautifulSoup import sys import xlwt import urllib,urllib2 import re def get_text(): #登錄后才能訪問的網頁,這個就是我們在network里查看到的Request URL url = 'https://app-ticketsys.hezongyun.com/index.php/ticket/ticket_iframe/' #瀏覽器登錄后得到的cookie,這個就是我們在network里查看到的Coockie cookie_str = r'ci_ticketsys_session=‘***********************************' #把cookie字符串處理成字典 cookies = {} for line in cookie_str.split(';'): key, value = line.split('=', 1) cookies[key] = value #設置請求頭 headers = {'User-Agent':'Mozilla/5.0(Windows NT 10.0; Win64;x64)AppleWebKit/537.36 (KHTML, like Gecko)Chrome/67.0.3396.62 Safari/537.36'} #在發送get請求時帶上請求頭和cookies resp = requests.get(url, cookies = cookies,headers = headers) soup = BeautifulSoup(resp.text,"html.parser") print soup
上述代碼就能得到登陸網頁的HTML源碼,這個源碼呈一個樹形結構,接下來針對需求我們提取需要的內容進行提取
我們需要工單號,對應時間,對應標題
按箭頭點擊到對應工單大塊,可以查詢到,所有的工單號,工單發起時間,工單標題均在<ul id =“ticket-list”>
這個id下面
那么點開一個工單結構,例如工單號ID = “4427” 下面我們需要知道工單號,工單發起時間,工單內容可以看到
1.工單內容在H3標簽下面
2.工單編號在類=“NUM”下面
3.工單發起時間在類= “時間” 下面
for soups in soup.select('#ticket-list'): if len(soups.select('h4'))>0: id_num = soups.select('.num') star_time = soups.select('.time') h4 = soups.select('h4') print id_num,start_time,h4
以上是“python如何抓取需要掃微信登陸頁面”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。