python爬蟲抓取資料時失敗_python爬蟲 大佬 請教下 為什麼爬取的資料有時能爬到 有時有爬不到, 程式碼如下:...
import time
import requests
from lxml import etree
import pymysql
class GuPiao_spider():
def __init__(self):
self.headers = {
'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64; rv:70.0) Gecko/20100101 Firefox/70.0'
}
self.url = 'http://q.10jqka.com.cn/index/index/board/all/field/zdf/order/desc/page/{}/ajax/1/' # 每頁的網址
# self.content_url = 'http://qd.10jqka.com.cn/quote.php?cate=real&type=stock&return=json&callback=showStockData&code=' # 動態網頁的網址
def get_pages(self):
'''
獲取網站總頁數
:return:
'''
url = 'http://q.10jqka.com.cn/index/index/board/all/field/zdf/order/desc/page/1/ajax/1/'
html = requests.get(url, headers=self.headers).content.decode('gbk')
html_path = etree.HTML(html)
page_num = html_path.xpath('//*[@id="m-page"]/span/text()')[0].split('/')[1]
return page_num
def get_content(self, url):
'''
:param url: 爬取每頁的原始碼,並獲取資料
:return: 返回所需資料的列表
'''
html = requests.get(url, headers=self.headers).content.decode('gbk')
html_path = etree.HTML(html)
tr = html_path.xpath('//tbody/tr')
content_list = []
for td in tr:
info = {}
title = td.xpath('td[3]/a/text()')[0]
code = td.xpath('td[2]/a/text()')[0]
li = td.xpath('td/text()')
info['序號'] = li[0]
info['程式碼'] = code
info['名稱'] = title
info['現價'] = li[1]
info['漲跌幅'] = li[2]
info['漲跌'] = li[3]
info['漲速'] = li[4]
info['換手'] = li[5]
info['量比'] = li[6]
info['振幅'] = li[7]
info['成交額'] = li[8]
info['流通股'] = li[9]
info['流動市值'] = li[10]
info['市贏率'] = li[11]
content_list.append(info)
return content_list
# def save_mysql(self,sql, data):
# '''
# 連線mysql資料庫,把資料存到資料庫中
# :return:
# '''
# conn = pymysql.connect(
# host = 'localhost',
# user = 'root',
# password = '123456',
# port = 3306,
# db = 'test'
# )
# cur = conn.cursor()
# cur.execute(sql,data)
# conn.commit()
def run(self):
sql = 'insert into tonghuashun(序號,程式碼,名稱,現價,漲跌幅,漲跌,漲速,換手,量比,振幅,成交額,流通股,流動市值,市贏率) values (%(序號)s,%(程式碼)s,%(名稱)s,%(現價)s,' \
'%(漲跌幅)s,%(漲跌)s,%(漲速)s,%(換手)s,' \
'%(量比)s,%(振幅)s,%(成交額)s,%(流通股)s,' \
'%(流動市值)s,%(市盈率)s)'
page_num = self.get_pages() # 網站總頁數
count = 2 # 用計數器表示爬取的第幾頁 帶入self.url中
while True:
print('正在爬取第{}頁資料...............'.format(count))
url = self.url.format(str(count))
# print(url)
content_list = self.get_content(url)
for data in content_list: # 迴圈列表 得到字典資料
print(data)
# self.save_mysql(sql, data)
count += 1
time.sleep(3)
if count >= int(page_num):
return False
if name == 'main':
spider = GuPiao_spider()
spider.run()
相關文章
- python為什麼叫爬蟲?Python和爬蟲有什麼關係?Python爬蟲
- Python爬蟲可以幹什麼?Python爬蟲有什麼用?Python爬蟲
- 利用Python爬蟲爬取天氣資料Python爬蟲
- 爬取資料時防止爬蟲被限制的四種方法爬蟲
- python爬蟲總是爬不到資料,你需要解決反爬蟲了Python爬蟲
- Python爬蟲抓取資料,為什麼要使用代理IP?Python爬蟲
- Python爬蟲與Java爬蟲有何區別?Python爬蟲Java
- python爬蟲獲取天氣網實時資料Python爬蟲
- 什麼是Python網路爬蟲?常見的網路爬蟲有哪些?Python爬蟲
- 網路爬蟲有什麼用?怎麼爬?手把手教你爬網頁(Python程式碼)爬蟲網頁Python
- Python爬蟲基礎-01-帶有請求引數的爬蟲Python爬蟲
- 【Python學習】爬蟲爬蟲爬蟲爬蟲~Python爬蟲
- 房產資料爬取、智慧財產權資料爬取、企業工商資料爬取、抖音直播間資料python爬蟲爬取Python爬蟲
- Python爬蟲可以幹什麼?有什麼作用?Python爬蟲
- python爬蟲---網頁爬蟲,圖片爬蟲,文章爬蟲,Python爬蟲爬取新聞網站新聞Python爬蟲網頁網站
- Python爬蟲框架:scrapy爬取高考派大學資料Python爬蟲框架
- Python爬蟲入門【3】:美空網資料爬取Python爬蟲
- Python為什麼叫爬蟲?Python為什麼適合寫爬蟲?Python爬蟲
- 輕鬆利用Python爬蟲爬取你想要的資料Python爬蟲
- 學透著13個爬蟲,這天下將沒有你爬不到的資料!爬蟲
- 爬蟲原理與資料抓取爬蟲
- python網路爬蟲_Python爬蟲:30個小時搞定Python網路爬蟲視訊教程Python爬蟲
- python爬蟲是什麼?為什麼用python語言寫爬蟲?Python爬蟲
- 什麼是網路爬蟲?為什麼用Python寫爬蟲?爬蟲Python
- 新手小白的爬蟲神器-無程式碼高效爬取資料爬蟲
- 什麼是爬蟲?Python爬蟲框架有哪些?爬蟲Python框架
- 不會Python爬蟲?教你一個通用爬蟲思路輕鬆爬取網頁資料Python爬蟲網頁
- 【python爬蟲】python爬蟲demoPython爬蟲
- 爬蟲爬取資料如何繞開限制?爬蟲
- 為什麼學習python及爬蟲,Python爬蟲[入門篇]?Python爬蟲
- python爬蟲是什麼?爬蟲可以分為哪幾類?Python爬蟲
- python 爬蟲 ip池怎麼做,有什麼思路?Python爬蟲
- 爬蟲抓取網頁資料原理爬蟲網頁
- Python和爬蟲有什麼聯絡?Python學習!Python爬蟲
- python網路爬蟲(7)爬取靜態資料詳解Python爬蟲
- 利用python編寫爬蟲爬取淘寶奶粉部分資料.1Python爬蟲
- Python爬蟲訓練:爬取酷燃網視訊資料Python爬蟲
- python爬蟲 爬取豆瓣電影 1-10 ajax 資料Python爬蟲