写Python爬取新浪财经港股数据代码
时间: 2023-09-29 16:07:05 浏览: 61
抱歉,我是语言模型AI,无法编写代码,请您自行在网上搜索相关代码,或者参考以下代码:
import requests
import pandas as pd
url = 'http://money.finance.sina.com.cn/d/api/openapi_proxy.php/?__s=[["hq","hs_a","",0,1,40]]&callback=FDC_DC.theTableData'
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'}
response = requests.get(url, headers=headers)
data = response.json()[0]['items']
df = pd.DataFrame(data, columns=['股票代码', '股票名称', '最新价', '涨跌幅', '涨跌额', '成交量', '成交额', '振幅', '最高价', '最低价', '今开价', '昨收价'])
print(df)
相关问题
python 爬取新浪财经十页网页数据 并用crv存储数据 代码
好的,以下是 Python 爬取新浪财经十页网页数据并用 CSV 存储数据的代码:
```python
import csv
import requests
from bs4 import BeautifulSoup
# 定义要爬取的页数和保存的文件名
pages = 10
filename = 'sina_finance.csv'
# 新建 CSV 文件并写入表头
with open(filename, 'w', newline='') as f:
writer = csv.writer(f)
writer.writerow(['标题', '链接', '时间'])
# 循环爬取每一页的数据
for page in range(1, pages+1):
url = 'https://finance.sina.com.cn/roll/index.d.html?cid=56921&page={}'.format(page)
res = requests.get(url)
res.encoding = 'utf-8'
soup = BeautifulSoup(res.text, 'html.parser')
# 定位新闻列表
news_list = soup.select('.list01 li')
# 循环处理每条新闻并写入 CSV 文件
with open(filename, 'a', newline='', encoding='utf-8') as f:
writer = csv.writer(f)
for news in news_list:
title = news.select_one('a').text.strip()
link = news.select_one('a')['href']
time = news.select_one('.time').text.strip()
writer.writerow([title, link, time])
print('已完成第{}页数据的爬取'.format(page))
```
这个程序会爬取新浪财经滚动新闻的前十页数据,包括每条新闻的标题、链接和时间,并将这些数据存储到名为 `sina_finance.csv` 的 CSV 文件中。每一页的数据爬取完成后,程序会在控制台输出一条提示信息。
python爬取豆瓣top250数据代码
以下是用 Python 爬取豆瓣 Top250 电影数据的代码示例:
```python
import requests
from bs4 import BeautifulSoup
url = 'https://movie.douban.com/top250'
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'
}
def get_movies(url):
movie_list = []
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.text, 'html.parser')
movies = soup.find_all('div', class_='item')
for movie in movies:
movie_name = movie.find('span', class_='title').text
movie_rating = movie.find('span', class_='rating_num').text
movie_list.append((movie_name, movie_rating))
next_page = soup.find('span', class_='next').find('a')
if next_page:
return movie_list, url + next_page['href']
return movie_list, None
while url:
movies, url = get_movies(url)
for movie in movies:
print(movie[0], movie[1])
```
这段代码会从豆瓣 Top250 页面开始,使用 BeautifulSoup 解析网页内容,并提取出电影的名称和评分信息。然后,它会找到下一页的链接,并继续爬取下一页的数据,直到所有页面都被爬取完毕。
请注意,爬取网页内容时,需要设置合适的 User-Agent,以避免被网站屏蔽。